C语言中怎么打开一个文件然后写入一些数据,然后再把数据取出来,最好有代码。

 我来答
百度网友d585d01
2013-05-18 · TA获得超过669个赞
知道小有建树答主
回答量:339
采纳率:0%
帮助的人:464万
展开全部
# include<stdio.h>
# include<stdlib.h>
int main()
{
char word[1000];
FILE *fp;
if((fp=fopen("words.txt","r+"))==NULL)
{
fprintf(stdout,"Can't open \"words\" file\n");
exit(1);
}
while(fgets(word,100,stdin)!=NULL&&(word[0]!='\n'))
{
fputs(word,fp);
}
while(fscanf(fp,"%s",word)==1)
{
puts(word);
}
return 0;
}

words.txt是此工程文件夹下的文本文件,必须已存在,否则报错。运行后,输入字符串,保存到字符数组word中,然后由fputs函数写入文件。可连续输入。若只输入回车,则表示输入完毕。。。

百度网友72165e1
推荐于2018-05-01 · TA获得超过2169个赞
知道大有可为答主
回答量:1369
采纳率:100%
帮助的人:404万
展开全部
有两种方法:
一是标准的输出输入方式
比如新建一个磁盘文件c:\a.txt,
将键盘输入的一字符串写到文件中:
FILE *ft;
char str[50];

ft=fopen("c:\\a.txt","w+");
printf("输入一个字符串:");
scanf("%s",str);
fputs(str,ft);
fclose(ft);
//重新打开这个文件并读出字符串,显示在屏幕上
ft=fopen("c:\\a.txt","rt");
fgets(str,50,ft);
fclose(ft);
printf("%s",str);

二是低级输入输出方式
仍如上例:
int hd;
char str[50];
printf("输入一个字符串:");
scanf("%s",str);
hd=open("c:\\a.txt",O_CREAT|O_TEXT|O_WRONLY);
write(hd,str,strlen(str));
close(hd);
//重新打开这个文件并读出字符串,显示在屏幕上
hd=open("c:\\a.txt",O_TEXT|O_RDONLY);
read(hd,str,50);
close(hd);
printf("%s",str);
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式