C语言文件操作
2013-01-15 10:22
232 查看
C语言中对文件进行操作必须首先打开文件,打开文件主要涉及到fopen函数。fopen函数的原型为
FILE* fopen(const char *path,const char *mode)
其中path为文件路径,mode为打开方式
1)对于文件路径,只需注意若未明确给出绝对路径,则默认该文件在工程的目录下。若需给出绝对路径,则注意转义字符'\',比如有文件test.txt存放在C盘根目录下,则文件路径参数值应为C:\\test.txt。
2)对于mode,主要由r,w,a,+,b,t六个字符组合而成。
r:只读方式,文件必须存在
w:只写方式,若文件存在,则原有内容会被清除;若文件不存在,则会建立文件
a:追加方式打开只写文件,只允许进行写操作,若文件存在,则添加的内容放在文件末尾;若不存在,则建立文件
+:可读可写
b:以二进制方式打开文件
t:以文本方式打开文件(默认方式下以文本方式打开文件)
下面是常见的组合:
r: 以只读的方式打开文件,只允许读,此文件必须存在,否则返回NULL,打开成功后返回文件指针,位置指针指向文件头部
r+: 以可读可写的方式打开文件,允许读写,此文件必须存在,否则返回NULL,打开成功后返回文件指针,位置指针指向文件头部
rb+: 以可读可写、二进制方式打开文件,允许读写,此文件必须存在,否则返回NULL,打开成功后返回文件指针,位置指针指向文件头部
rt+: 以可读可写、文本方式打开文件,允许读写,此文件必须存在,否则返回NULL,打开成功后返回文件指针,位置指针指向文件头部
w: 以只写的方式打开文件,只允许写,若文件存在,文件中原有内容会被清除;若文件不存在,则创建文件,打开成功后返回文件指针,位置指针指向文件头部
w+: 以读写的方式打开文件,允许读写,若文件存在,文件中原有内容会被清除;若文件不存在,则创建文件,打开成功后返回文件指针,位置指针指向文件头部
a: 以追加、只写的方式打开文件,只允许写。若文件存在,则追加的内容添加在文件末尾,若文件不存在,则创建文件。打开成功后返回文件指针,位置指针指向文件头部
a+: 以追加、可读写的方式打开文件,允许读写。若进行读操作,则从头开始读;若进行写操作,则将内容添加在末尾。若文件不存在,则创建文件。打开成功后返回文件指针,位置指针指向文件头部
贴自己编的三个小文件
FILE* fopen(const char *path,const char *mode)
其中path为文件路径,mode为打开方式
1)对于文件路径,只需注意若未明确给出绝对路径,则默认该文件在工程的目录下。若需给出绝对路径,则注意转义字符'\',比如有文件test.txt存放在C盘根目录下,则文件路径参数值应为C:\\test.txt。
2)对于mode,主要由r,w,a,+,b,t六个字符组合而成。
r:只读方式,文件必须存在
w:只写方式,若文件存在,则原有内容会被清除;若文件不存在,则会建立文件
a:追加方式打开只写文件,只允许进行写操作,若文件存在,则添加的内容放在文件末尾;若不存在,则建立文件
+:可读可写
b:以二进制方式打开文件
t:以文本方式打开文件(默认方式下以文本方式打开文件)
下面是常见的组合:
r: 以只读的方式打开文件,只允许读,此文件必须存在,否则返回NULL,打开成功后返回文件指针,位置指针指向文件头部
r+: 以可读可写的方式打开文件,允许读写,此文件必须存在,否则返回NULL,打开成功后返回文件指针,位置指针指向文件头部
rb+: 以可读可写、二进制方式打开文件,允许读写,此文件必须存在,否则返回NULL,打开成功后返回文件指针,位置指针指向文件头部
rt+: 以可读可写、文本方式打开文件,允许读写,此文件必须存在,否则返回NULL,打开成功后返回文件指针,位置指针指向文件头部
w: 以只写的方式打开文件,只允许写,若文件存在,文件中原有内容会被清除;若文件不存在,则创建文件,打开成功后返回文件指针,位置指针指向文件头部
w+: 以读写的方式打开文件,允许读写,若文件存在,文件中原有内容会被清除;若文件不存在,则创建文件,打开成功后返回文件指针,位置指针指向文件头部
a: 以追加、只写的方式打开文件,只允许写。若文件存在,则追加的内容添加在文件末尾,若文件不存在,则创建文件。打开成功后返回文件指针,位置指针指向文件头部
a+: 以追加、可读写的方式打开文件,允许读写。若进行读操作,则从头开始读;若进行写操作,则将内容添加在末尾。若文件不存在,则创建文件。打开成功后返回文件指针,位置指针指向文件头部
贴自己编的三个小文件
#include<stdio.h> int main() {//数字的读写 FILE *p; int i,j; //写 p = fopen("cfile.txt","w");//打开或新建,重新写数据 for(i=0;i<10;i++) { fprintf(p,"%d\n",i); } fclose(p); //读 p = fopen("cfile.txt","r"); for(i=0;i<10;i++) { fscanf(p,"%d\n",&j); printf("%d\n",j); } fclose(p); return 0; }
#include<stdio.h> #include <string.h> int main() {//字符串的读写 FILE *p; int i,j; char *s = "hello world!",*ss; //如果ss不为指针,则读取出现问题
//写 p = fopen("cfile.txt","w");//打开或新建,重新写数据 j = strlen(s); for(i=0;i<j;i++,s++) { fprintf(p,"%c",*s); } fclose(p); //读 p = fopen("cfile.txt","r"); fscanf(p,"%c",ss); while(*ss != '\0') { printf("%c",*ss); ss++; fscanf(p,"%c",ss); } return 0; }
#include<stdio.h> #include <string.h> int main() {//字符串的读写 FILE *p; int i,j; char *s = "hello world!",*ss; //写 p = fopen("cfile.txt","w");//打开或新建,重新写数据 j = strlen(s); for(i=0;i<j;i++,s++) { //fprintf(p,"%c",*s); fputc(*s,p); } fclose(p); //读 p = fopen("cfile.txt","r"); *ss = fgetc(p); //fscanf(p,"%c",ss); while(*ss != EOF) { printf("%c",*ss); ss++; //fscanf(p,"%c",ss); *ss = fgetc(p); } return 0; }
相关文章推荐
- C语言文件操作
- C语言文件操作函数大全
- C语言文件操作函数小结
- C语言文件读写操作
- C语言文件操作函数大全
- C语言文件操作函数(ANSI)详解(一)
- c语言文件读写操作
- 总结文件操作函数-目录(三)-C语言
- 【C语言】【unix c】使用mmap将文件映射到进程的虚拟地址空间,然后对内存的操作直接反应到文件中
- C语言之文件操作04——输入矩阵a,b,求乘积c,并打印a,b,c到文件
- C语言文件操作函数
- [FileIO]C语言中流与文件操作编程学习
- C语言的文件操作
- 使用C语言操作文件的基本函数整理
- 【C语言】没事可以试试这个小程序,使用文件操作,模拟实现一个简单的文件拷贝工具!
- C语言 文件操作函数
- C语言的fopen函数(文件操作/读写)
- 文件操作04 - 零基础入门学习C语言63
- C语言之标准文件操作
- C语言文件操作函数