b2科目四模拟试题多少题驾考考爆了怎么补救
b2科目四模拟试题多少题 驾考考爆了怎么补救

Linux库函数fopen / fread / fwrite / fclose / f的文件操作

电脑杂谈  发布时间:2020-03-30 09:12:26  来源:网络整理

php fopen wb_fopen wb_fopen wb 权限

Linux应用层软件的开发始终涉及文件的操作(例如: 日志,配置). 在这段时间内,有很多相关的库函数

它可以用手写方式书写,但是考虑到人们的记忆力是有限的,再加上当今流入大脑的大量信息,人们会暂时忘记它们.

尽管手头的开发工作涉及该领域的许多知识,但我还是决定花些时间为自己编写. 如果以后有任何疑问,可以直接检查记录fopen wb 权限,而不必每次都检查.

找到杜娘,别胡说八道,说到重点.

介绍用于文件操作的常用库函数:

1)fopen函数

头文件: #include

原型: FILE * fopen(const char *路径,const char *模式);

参数:

path: 可能的值: 常量字符串(例如: “ / home / dir / test.txt”),指向字符串的指针(例如: char * p_file =“ /home/dir/test.txt”;),

当然数组也是可以接受的(例如: char文件[100] = {“ /home/dir/test.txt”};)

模式: 可选参数为“ r”“ w”“ a”“ r +”“ w +”“ a +”“其他选项+ b”

“ r”: 打开文本文件以供阅读. 流位于文件的开头.

该文件必须存在,否则将失败;就像获取日志内容一样,您可以以只读模式打开文件并开始从文件中读取数据;

“ w”: 将文件截断为零长度或创建要写入的文本文件. 流位于文件的开头.

fopen wb 权限_fopen wb_php fopen wb

如果文件存在,将创建它. 如果文件不存在,将创建它. 请注意,如果您不断向日志添加新内容,则无法更改打开日志的模式.

“ a”: 打开以进行追加(在文件末尾写入). 如果文件不存在,则会创建该文件.

流位于文件末尾.

如果文件不存在,将创建它. 如果文件存在,它将被打开并且不会被清除. 它将指向文件的末尾. 通常用于将内容写入日志.

“ b”: 存储文件时,以二进制模式打开文件. 如果未添加“ b”,则以文本模式(ASCII代码)打开文件. 这是主要的

根据实际情况,文件通常分为文本文件和二进制文件. 当文本文件存储在磁盘上时,每个字符对应一个字节和二进制.

文件根据二进制编码规则存储. 一个简单的示例: 一个文本文件的5678存储为00110101 00110110 00110111 00111000

二进制存储为: 0001011000101110. 通常,我们在实际应用中编辑文本文件. 二进制文件还包括例如打开图片.

根据手册的概述:

a)如果需要对已经存在且具有内容的文件进行操作,建议在“ r”模式下仅读取文件内容,否则“ r +”可以具有写权限;

b)如果需要创建新文件,通常“ w”模式或“ w +”具有读取权限并可以读取书面内容;

c)如果继续基于现有文件将内容添加到文件末尾fopen wb 权限,则可以在“ a”模式或“ a +”模式下具有读取权限;

d)如果使用二进制文件,则需要在模式下添加“ b”.

返回值: 成功打开文件并返回FILE指针(文件流),未返回NULL;通常确定返回值,然后执行后续任务;

2)fclose函数

fopen wb_fopen wb 权限_php fopen wb

头文件: #include

原型: int fclose(FILE * fp);

参数:

fp: 成功打开文件后返回的FILE指针

功能是关闭文件流并释放指针;

返回值: 如果成功,则返回0;如果失败,则返回EOF(-1);否则,返回0. 通常很少做出判断;

3)fread函数

头文件: #include

原型: size_t fread(无效* ptr,size_t大小,size_t nmemb,FILE *流);

参数:

ptr: 用于存储文件内容的内存空间的指针或地址. 它可以是数组名,也可以是指向malloc分配的内存的指针;

size: 与nmemb结合使用的读取块数;大小1表示将大小为nmemb的文件的内容读入指向内存的ptr;

nmemb: 一次要读取的文件内容的大小,通常是ptr指向的内存大小,当然,前提是大小为1;

stream: 打开文件的fopen的返回值;

返回值: 成功返回读取内容的大小. 大小为1时,通常小于或等于nmemb值. 失败或文件末尾返回0.

php fopen wb_fopen wb 权限_fopen wb

4)fwrite函数

头文件: #include

原型: size_t fread(无效* ptr,size_t大小,size_t nmemb,FILE *流);

参数:

ptr: 要写入的内容的地址;

size: 写入的块数,与nmemb结合使用;大小为1,表示将大小为nmemb的内容写入文件;

nmemb: 一次写入文件的内容大小,通常是ptr指向的内存大小,当然,前提是大小为1;

stream: 打开文件的fopen的返回值;

返回值: 成功返回内容的大小,或在文件末尾返回0.

5)fgets函数

头文件: #include

原型: char * fgets(char * s,整数大小,FILE *流);

参数:

s: 用于存储文件内容的地址;

size: 从文件获取的内容的大小,可以根据实际情况定义. 如果按行读取,则通常定义为1024个字节;

fopen wb_fopen wb 权限_php fopen wb

stream: 打开文件的fopen的返回值;

功能: 此功能非常有用,尤其是在用于读取配置文件时. 通常用于逐行读取文件内容,然后对其进行分析.

每行的内容将涉及字符串匹配或提取字段等. 那么阅读时需要注意什么?

情况1: 当读取的内容小于大小值时,所有字符都将被读入s中,包括“ \ r \ n”,并且将自动在末尾添加“ \ 0”

完整的字符串. 此时,您需要添加代码以滤除'\ r \ n'并将其修改为'\ 0';

情况2: 当读取的内容大于大小时,它将被自动截断,最后一位为'\ 0',形成一个完整的字符串;

此功能的主要用途是注意这两点. 您也可以从键盘上读取输入的标准输入.

返回值: 成功返回s,失败返回NULL.

6)ftell函数

头文件: #include

原型: long ftell(FILE *流);

此函数主要用于从文件开头获取当前文件游标(指针)的大小(以字节为单位);不太多,但是

使用fseek或以“ a”模式打开文件,即可获取文件大小;

返回值: 成功返回大小,失败返回0.

7)fseek函数

头文件: #include

原型: int fseek(文件*流,长偏移量,int来源);

参数:

offset: offset,nL,n> 0表示wherece的指定位置的前向偏移,换句话说,从wherece到文件末尾,n <0为


本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/jisuanjixue/article-157590-1.html

    相关阅读
      发表评论  请自觉遵守互联网相关的政策法规,严禁发布、暴力、反动的言论

      热点图片
      拼命载入中...