6 标准IO fopen/fclose
2017-02-26 20:24
253 查看
1. 标准IO与文件IO的对应函数
文件IO: 标准IO
open fopen
close fclose
lseek fseek, rewind
read 读写函数比较多(分三类,全缓存、行缓存和无缓存)
write
2. fopen函数
FILE *fopen (const char *path, const char*mode);
返回值:FILE * 文件流指针,文件流指针类似于文件IO 中的文件描述符,定义成struct_IO_FILE,在/usr/include/libio.h ,里面包含读写缓存的首地址、大小、位置指针等。
标准的输入流:stdin 0
标准的输出流:stdout 1
标准的出错流:stderr 2
Mode:类似于文件IO的flag
mode整理如下:
Ø b:二进制文件
Ø r: 只读方式打开文件,文件必须存在;
Ø w或a:只写方式打开文件,文件不存在则创建;
区别: w等价O_TRUNC,a等价O_APPEND;
Ø +:读写方式打开文件,文件必须存在;
例:以读写方式打开一个文件,该文件必须存在: r+
以追加方式打开一个文件,若文件不存在,则创建: a或a+
fopen创建的文件权限:0666 & (~umask)
3. fclose
int fclose(FILE *stream)
Ø fclose()调用成功返回0,失败返回EOF,并设置errno
Ø 在该文件被关闭之前,刷新缓存中的数据。如果标准I / O库已经为该流自动分配了一个缓存,则释放此缓存。
文件IO: 标准IO
open fopen
close fclose
lseek fseek, rewind
read 读写函数比较多(分三类,全缓存、行缓存和无缓存)
write
2. fopen函数
FILE *fopen (const char *path, const char*mode);
返回值:FILE * 文件流指针,文件流指针类似于文件IO 中的文件描述符,定义成struct_IO_FILE,在/usr/include/libio.h ,里面包含读写缓存的首地址、大小、位置指针等。
标准的输入流:stdin 0
标准的输出流:stdout 1
标准的出错流:stderr 2
Mode:类似于文件IO的flag
r或rb | 打开只读文件,该文件必须存在。 |
r+或r+b | 打开可读写的文件,该文件必须存在。 |
w或wb | 打开只写文件,若文件存在则文件长度清为0,即会擦些文件以 前内容。若文件不存在则建立该文件。 |
w+或w+b或wb+ | 打开可读写文件,若文件存在则文件长度清为零,即会擦些文件 以前内容。若文件不存在则建立该文件。 |
a或ab | 以附加的方式打开只写文件。若文件不存在,则会建立该文件, 如果文件存在,写入的数据会被加到文件尾,即文件原先的内容 会被保留。 |
a+或a+b或ab+ | 以附加方式打开可读写的文件。若文件不存在,则会建立该文 件,如果文件存在,写入的数据会被加到文件尾后,即文件原先 的内容会被保留。 |
Ø b:二进制文件
Ø r: 只读方式打开文件,文件必须存在;
Ø w或a:只写方式打开文件,文件不存在则创建;
区别: w等价O_TRUNC,a等价O_APPEND;
Ø +:读写方式打开文件,文件必须存在;
例:以读写方式打开一个文件,该文件必须存在: r+
以追加方式打开一个文件,若文件不存在,则创建: a或a+
fopen创建的文件权限:0666 & (~umask)
3. fclose
int fclose(FILE *stream)
Ø fclose()调用成功返回0,失败返回EOF,并设置errno
Ø 在该文件被关闭之前,刷新缓存中的数据。如果标准I / O库已经为该流自动分配了一个缓存,则释放此缓存。
相关文章推荐
- 标准IO: 文件的打开与关闭函数 fopen & fclose
- Linux 标准IO操作函数fopen fclose fread fwrite fgetc fputc fgets fputs
- 标准IO,fopen,fclose
- 文件IO open 与 标准 IO fopen 的对应
- 标准io (fopen) 和 文件io(open)
- 【IO】中的InputStream类的read(),read(b),read(b,off,len)关于close()及其顺序发生的关系
- UNIX环境高级编程——标准IO-实现查看所有用户
- (1) MPI-IO: 基本函数 open, close, write_shared
- Java IO笔记:标准IO
- 标准IO
- JavaIO之标准输入输出(三)
- 关于系统调用open,write,read,close及库函数fopen,fwrite,fread,fclose的使用
- 标准IO缓冲详解全缓冲、行缓冲、不缓冲
- 标准C的IO
- 文件 IO 之字符流 FileWriter 使用示例(构造,flush,close)
- 深入讲解标准c语言的IO
- 使用标准io实现文件复制功能
- UNIX环境高级编程——标准IO-实现查看所有用户
- 【IO进程】标准IO
- C/C++文件操作fopen/fscanf/ fprintf/ fclose简单使用方法