【C语言】向文件写入东西不能写入换行
我的程序if((fp=fopen("xinxi.txt","ab"))==NULL)//文件为空则退出{printf("cannotopenthisfifl\n");ex...
我的程序if((fp=fopen("xinxi.txt","ab"))==NULL) //文件为空则退出
{
printf("cannot open this fifl\n");
exit(0);
}
fprintf(fp,"%s,%s,%f",clients[number].xingming,clients[number].mima,clients[number].zongjine);
在 fprintf那加\n在txt文件里就看到一个乱码而不是换行
球高手帮忙 展开
{
printf("cannot open this fifl\n");
exit(0);
}
fprintf(fp,"%s,%s,%f",clients[number].xingming,clients[number].mima,clients[number].zongjine);
在 fprintf那加\n在txt文件里就看到一个乱码而不是换行
球高手帮忙 展开
展开全部
C语言写文件是可以写入换行的,不过需要使用通配符'\n'.
设定打开文件的指针为fp,那么向文件中写入换行可以用如下几种办法:
1 通过fputc函数:
fputc函数可以写入一个字符,所以可以通过
fputc('\n', fp);
的方式写入一个换行符。
2 通过fprintf函数:
和通过打印函数printf输出一个换行类似,可以
fprintf(fp, "\n");
3 通过fputs函数:
fputs功能是写入一行字符串并换行。这里只需要它的换行功能,所以写入一个长度为0的字符串就可以了,注意不是空串NULL。
fputs("", fp);
4 通过fwrite函数:
fwrite是写一块数据的,用来写一个字符理论上可行,不过是大材小用了。
char c = '\n';
fwrite(&c, 1,1,fp);
以上四种方法都可以向文件写入换行符。
设定打开文件的指针为fp,那么向文件中写入换行可以用如下几种办法:
1 通过fputc函数:
fputc函数可以写入一个字符,所以可以通过
fputc('\n', fp);
的方式写入一个换行符。
2 通过fprintf函数:
和通过打印函数printf输出一个换行类似,可以
fprintf(fp, "\n");
3 通过fputs函数:
fputs功能是写入一行字符串并换行。这里只需要它的换行功能,所以写入一个长度为0的字符串就可以了,注意不是空串NULL。
fputs("", fp);
4 通过fwrite函数:
fwrite是写一块数据的,用来写一个字符理论上可行,不过是大材小用了。
char c = '\n';
fwrite(&c, 1,1,fp);
以上四种方法都可以向文件写入换行符。
2015-05-23 · 知道合伙人数码行家
关注
展开全部
1、你的程序是错误的,所以不能写入换行。
原因如下:用"ab" 打开是二进制文件,要用 fwrite 写。
2、修改建议:写文本文的话用 "w" 就可以了。fprintf(fp,"%s,%s,%f\n",....)。用 \n 换行。
原因如下:用"ab" 打开是二进制文件,要用 fwrite 写。
2、修改建议:写文本文的话用 "w" 就可以了。fprintf(fp,"%s,%s,%f\n",....)。用 \n 换行。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
用"ab" 打开是二进制文件。要用 fwrite 写。
写文本文件 用 "w" 就可以了。
fprintf(fp,"%s,%s,%f\n",....
用 \n 换行
写文本文件 用 "w" 就可以了。
fprintf(fp,"%s,%s,%f\n",....
用 \n 换行
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
如果你输出文件是文本的建议fopen使用参数"at",那么函数会帮你自动补完换行符。
如果使用"ab"说明是Binary,那么Windows的换行必须是0x0D 0x0A 组成"\r\n"
如果使用"ab"说明是Binary,那么Windows的换行必须是0x0D 0x0A 组成"\r\n"
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
试试\r\n
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询