1.打开文件
FILE *fp;
fp = open(const char *filename,char *mod)
注意这里的filename需要绝对路径且分隔符用\\表示如:C:\\Users\\...\\Desktop\\filename(名字是要加后缀的呦)
文件使用方式 | 含义 | 如果文件不存在 |
"r"(只读) | 打开一个已存在文件,读取数据 | 出错 |
"w"(只写) | 往文件里面写数据 | 建立新文件 |
"a"(追加) | 在为文件尾部添加数据 | 出错 |
"rb"(只读以二进制方式) | 打开一个二进制的文件进行读取 | 出错 |
"wb"(只写以二进制方式) | 打开一个二进制文件往里面写数据 | 建立新文件 |
"ab"(追加以二进制方式) | 往二进制文件尾部添加数据 | 出错 |
"r+"(读写) | 为了读写打开一个文本文件 | 出错 |
"w+"(读写) | 为了读写建立一个新的文本文件 | 建立新文件 |
"a+"(读写) | 为了读写打开一个文本文件 | 出错 |
"rb+"(读写) | 为了读写打开一个二进制文件 | 出错 |
"wb+"(读写) | 为了读写建立一个新的二进制文件 | 建立新文件 |
"ab+"(读写) | 为了读写打开一个二进制文件 | 出错 |
2.关闭文件
fclose(fp)
只要不需要用已经打开的文件就不能让文件指针在指向原来的文件这时用fclose这个函数,成功关闭返回值为0,失败EOF(-1)。
3.对于文件的提取与写入
函数名 | 调用方式 | 功能 | 返回值 |
fgetc() | fgetc(fp) | 从fp这个位置读取一个字符 | 读成功,返回所带出的字符,失败EOF(-1) |
fputc() | fputc(char c,fp) | 从fp这个位置写入c这个字符 | 写成功,返回输入的字符,失败EOF(-1) |
4.获取文件大小
fseek(fp,0L,SEEK_END);
int len = ftell(fp);
fseek(fp, 0, 0);
fseek(fp,0L,SEEK_END)这一句是将文件指针fp移动到文件数据的最后一位上,ftell(fp)获取当前文件指针到文件开头的长度大小,fseek(fp,0,0)是将文件指针fp移动到文件开头的地方。