【文件】文件读写基本API

来源:互联网 发布:淘宝御泥坊面膜 编辑:程序博客网 时间:2024/05/17 01:30


文件操作方式

文件操作方式

含义

r

以只读方式打开一个字符文件,该文件必须存在

w

以只写方式打开一个字符文件,文件指针指向文件首部。若文件存在则文件长度清为0,即该文件内容会消失。若文件不存在,则建立该文件。

a

以附加的方式打开只写文件。若文件不存在,则会建立该文件,如果文件存在,写入的数据会被加到文件尾,即文件原先的内容会被保留。(EOF符保留)

rb

以只读方式打开一个二进制文件。

wb

以只写方式打开或新建一个二进制文件,只允许写数据。

ab

打开一个二进制文件,以向文件追加数据。

r+

以读写方式打开一个字符文件,该文件必须存在。

w+

打开可读写文件,若文件存在则文件长度清为零,即该文件内容会消失。若文件不存在则建立该文件。

a+

以附加方式打开可读写的文件。若文件不存在,则会建立该文件,如果文件存在,写入的数据会被加到文件尾后,即文件原先的内容会被保留。 (原来的EOF符不保留)

rb+

读写打开一个二进制文件,允许读写数据,文件必须存在。

wb+

读写打开或建立一个二进制文件,允许读和写。

ab+

读写打开一个二进制文件,允许读或在文件末追加数据。

at+

打开一个叫string的文件,a表示append,就是说写入处理的时候是接着原来文件已有内容写入,不是从头写入覆盖掉,t表示打开文件的类型是文本文件,+号表示对文件既可以读也可以写。

 

文件读写基本API

............haven't  finished..............

 

从一个例子讲起

 

#include "stdio.h"#include "stdlib.h"#include "string.h" int main(){    int rv = 0;    FILE *fp = NULL;    char buf[64] = {0};    //char *filename = "f:\\file1.txt";    //这种只能在windows上应用(这是在F盘跟目录下的文件)    //char *filename = "f:/file2.txt"; //这种写法在windows和Linux上通用     //char *filename = "F:\\Cpp_ChuanZhi\\MyProject\\demo1\\demo1\\file1.txt";    char *filename = "F:/Cpp_ChuanZhi/MyProject/demo1/demo1/file1.txt";    fp = fopen(filename, "r");    if(fp == NULL)    {       printf("fopen err:%s",filename);       return rv;    }    while(!feof(fp))    {       if(fgets(buf, 64, fp) != NULL)  //将fp指定的n-1个字符读到buf中。若在读入n-1个字符完成之前就遇到换行符'\n'或者文件结束符EOF,也将停止读入。但将遇到的换行符'\n'也作为一个字符送入字符数组中。fgets()在读入字符串之后会自动添加一个串结束符'\0',因此送入字符数组中的字符串(包括'\0'在内)最多n个字节。       {           printf("%s",buf);       }    }    fclose(fp);    system("pause");    return 0;}

 

 


0 0
原创粉丝点击