C文件操作

1. 文件操作的基本用法
查看菜鸟教程:http://www.runoob.com/cprogramming/c-file-io.html

2. 总结
文件操作的基本流程:
在这里插入图片描述
C文件操作基本函数
C语言中没有输入输出语句,所有的输入输出功能都用 ANSI C提供的一组标准库函数来实现。文件操作标准库函数有:

//文件的打开操作 
fopen 打开一个文件
//文件的关闭操作 
fclose 关闭一个文件
//文件的读写操作 
fgetc 从文件中读取一个字符
fputc 写一个字符到文件中去
fgets 从文件中读取一个字符串
fputs 写一个字符串到文件中去
fprintf 往文件中写格式化数据
fscanf 格式化读取文件中数据
fread 以二进制形式读取文件中的数据
fwrite 以二进制形式写数据到文件中去
getw 以二进制形式读取一个整数
putw 以二进制形式存贮一个整数
//文件状态检查函数 
feof 文件结束
ferror 文件读/写出错
clearerr 清除文件错误标志
ftell 了解文件指针的当前位置
//文件定位函数 
rewind 反绕
fseek 随机定位						
  • 写文件
FILE *fp;
	fp=fopen("D:/fp.txt","w+");
	if (fp==NULL)
	{
		printf("打开文件失败");
		return;
	}
//写入字符
//函数 fputc() 把参数 c 的字符值写入到 fp 所指向的输出流中。如果写入成功,它会返回写入的字符,如果发生错误,则会返回 EOF。
	char chData;
	scanf("%c",&chData);
	fputc(chData,fp);
	fputc('\n',fp);
//写入字符串
//函数 fputs() 把字符串 s 写入到 fp 所指向的输出流中。如果写入成功,它会返回一个非负值,如果发生错误,则会返回 EOF
	char szData[20];
	scanf(("%s"),&szData);
	fputs(szData,fp);
	fputc('\n',fp);
//格式化数据写入字符串
//函数fprintf()把一个字符串写入到文件中,根据指定的format(格式)发送信息(参数)到由stream(流)指定的文件.。 fprintf()的返回值是输出的字符数,发生错误时返回一个负值。
	int nData;
	double lfData;
	scanf("%d%lf",&nData,&lfData);
	fprintf(fp,"%d\n%.2lf",nData,lfData);
	fputc('\n',fp);
	//关闭文件
	fclose(fp);
  • 读文件
FILE *fp;
	fp=fopen("D:/fp.txt","r+");
	if (fp==NULL)
	{
		printf("打开文件失败");
		return;
	}
//读取字符
//函数fgetc() 从 fp 所指向的输入文件中读取一个字符。返回值是读取的字符,如果发生错误则返回 EOF
    char ch;
	while (!feof(fp))
	{
		ch=fgetc(fp);
		printf("%c",ch);
	}
//读取字符串	
//函数 fputs() 把字符串 s 写入到 fp 所指向的输出流中。如果写入成功,它会返回一个非负值,如果发生错误,则会返回 EOF	
	char szBuff[20];
	while(!feof(fp))
	{
		fgets(szBuff,20,fp);
		printf("%s",szBuff);
	}

//格式化读取字符串
//函数fscanf()从一个流中执行格式化输入,成功返回读入的参数的个数,失败返回EOF(-1)。fscanf()遇到空格和换行时结束,注意空格时也结束。这与fgets()有区别,fgets(0)遇到空格不结束。
	int chBuff[20];
	while (!feof(fp))
	{
		fscanf(fp,"%s",chBuff,20);
		printf("%s",chBuff);
	}
//关闭文件
	fclose(fp);

猜你喜欢

转载自blog.csdn.net/qq_29187197/article/details/82874687
今日推荐