目录
文件打开
打开文件使用fopen()函数来创建一个新的或打开一个已有的文件,这个调用会初始化FILE的一个对象,类型FILE包含了所有用来控制流的必要的信息。
fopen调用格式:
fopen(文件名,文件使用格式);
使用fropen()函数,若成功打开文件,返回给文件的FILE类型的文件指针,否则返回一个空指针NULL。
参数文件名是一个字符串常量或字符串数组,可以包含文件的路径,例如“e:\\test\\list\\lis.dat”,“\\”是转义字符不能写成“\”。不包含路径是指源代码当前路径目录下的文件。
文件使用方式如下:
文件信息写/读
1.一个字符读/写函数
fgetc()函数可以从一个指定的以读/写方式打开的文件上读字符,起调用个是为:
fgetc(fp);
fp是fopen()函数返回的一个文件指针。
由于字符储存时使用ASCII,ASCII的范围是0~255;不包含-1,因此可以使用EOF作为文件结束标志。
while((c=fgetc(fp))!=EOF)
{
...
}
如果处理的是二进制文件,在判定文件结束时不能使用EOF则要使用feof()函数
feof(fp);
while(!feof(fp))
{
c=fgetc(fp);
...
}
2.字符写入函数
fputc(c,fp);
c为要写入得字符
3.函数fread与fwrite
(1)fread函数
用于从指定文件里读物出数据块,其一般调用格式是:
fread(buffer,size,count,fp);
buffer是一个内存区域的首地址;size是每次读入的字节数;count是要读入的次数;
函数功能从fp指定的文件中读取count次,每次读取size个字节,存到buffer为首地址的内存区域中。
(2)fwrite函数
fwrite(buffer,size,count,fp);
buffer是输出数据在内存中存放的首地址;size是每次输入的字节数,如果函数调用成功,则返回实际写入的数据块个数。
4.格式化文件读/写
函数fscanf和fprintf用来按指定格式读/写文本文件,与scanf和printf相似;区别是前者是对磁盘文件进行读写,后者分别对stdin(键盘),stdout(显示器)进行读写;
(1)fscanf调用格式:
fscanf(文件指针,格式字符串,地址参数表列);
fscanf(fp,"%f",&a);
(2)fprintf调用格式
fprintf(文件指针,格式字符串,地址参数表列);
fprintf(fp,“%d”,&a);
文件关闭
文件关闭函数
fclose(文件指针);
例如:
fclose(fp);