22问答网
所有问题
用c语言向一txt文件写入内容后将该写入的内容从txt输出到屏幕上,错在哪?
如题所述
举报该问题
推荐答案 2013-09-22
原因:
这里存在的问题是:fopen 打开的文件,不执行关闭操作,是不会保存数据至文件的。
你虽然执行了fprintf 写入了数据,但在fclose前就从文件获取数据,数据是没有保存在文件内的,因此该操作获取不到任何数据。
解决方法:
向文件写完数据后,马上执行fclose操作,完成数据的保存,然后再执行fopen 打开该文件,进行fgetc获取数据,打印到屏幕,使用完毕后在关闭该文件。需要注意的地方是,第二次打开文件的操作需要修改为只读或其他读取模式,即 “r+”而不再是 "w+"。
谢谢采纳!
温馨提示:答案为网友推荐,仅供参考
当前网址:
http://22.wendadaohang.com/zd/2TXC6TSIT.html
其他回答
第1个回答 2013-09-22
在fprintf 下面加上
fseek(fp, 0, SEEK_SET);
就可以了,把文件指针,移动到开始位置
while循环里面还要加上
ch=fgetc(fp);
第2个回答 2013-09-22
跟你文件的指针有关系,当你添加完数据的时候,文件指针是移动到了最后
第3个回答 2013-09-22
fprintf后加
fseek(stream, 0, SEEK_SET);
相似回答
在
VS2019中
C语言
编程打开
txt文件写入
一句话,出现了C28183错误,怎么解决...
答:
它的返回值不是文件指针,是错误代码。这句if ((fp = fopen_s(&fp,"E:\\exp01.
txt
", "w")) == NULL)改成 errno_t ecode;if ((ecode = fopen_s(&fp,"E:\\exp01.txt", "w")) == 0)fopen_s函数原型:errno_t fopen_s( FILE** pFile, const char *filename, const char...
C语言
程序的功能是:将当前目录下的jsgc01.
txt文件内容
读取出来并...
答:
int main(void){ FILE *fp;int ch;/***Found***/ fp = fopen("jsgc01.
txt
", "r");//这里把w改成r,表示允许读操作 if (NULL == fp){ printf( "Cannot open file!\n") ;exit(1) ;} ch = fgetc(fp);/***Found***/ while (ch != EOF) //EOF是文件结束标志 { putc...
大家正在搜
c语言将内容写入文件无法写入c盘
c语言读取文件内容写入另一个文件
为什么c语言写入文件的内容会乱码
c语言创建txt文件写入数组
c语言打开txt文件并写入
c语言写入txt文件
怎么将c语言程序写入文件
c语言将数据写入文件
c语言怎么写入文件
相关问题
如何用C语言将一段文字写入TXT文本,然后读出文本中的内容显...
用c语言创建一个txt文件,并且写入数据
用C语言编写“读取一个给定的文本文件,并将文件的内容显示在屏...
C语言—怎么把一个指定文件的内容输出到屏幕上?
用C语言将txt文件读入后,如何存入不同的数组,并输出在屏幕...
将一个文本文件中的内容复制到另一个文本文件中,再将另一个文件...
如何用c语言实现文件先写入部分数据,然后再读取输出在屏幕上
C语言 写入TXT前怎么先把TXT中的内容先清空