免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 26219 | 回复: 8

[C] 在C语言中,把字符串一行一行写入文件 [复制链接]

论坛徽章:
0
发表于 2009-04-03 11:29 |显示全部楼层
20可用积分
我的程序流程:
1>先在文件中一行一行读出文件      //已实现
2>对1中的读出的字符串,进行处理。
    如:  abc = 123                        //进行分割得到3个字符串 “abc”  “=”  “123”(已实现)
3>我想把字符串输入到文件中,分别3行。
如: abc
         =
         123

现在第3步还没有实现,我写入文件后都在一行。如何解决,谢谢。
系统:ubuntu 8.10

[ 本帖最后由 KYlinux 于 2009-4-3 12:02 编辑 ]

最佳答案

查看完整内容

fprintf(fp, "%s\n%s\n%s\n", str1, str2, str3);fp是要写入的文件指针, str[1-3]是要写入的字符串fputs(const char *s, FILE *fp); 一次一个字符串的写也可以先sprintf()下,在fputs写。。。

论坛徽章:
0
发表于 2009-04-03 11:29 |显示全部楼层
fprintf(fp, "%s\n%s\n%s\n", str1, str2, str3);

fp是要写入的文件指针, str[1-3]是要写入的字符串

fputs(const char *s, FILE *fp); 一次一个字符串的写

也可以先sprintf()下,在fputs写。。。

论坛徽章:
0
发表于 2009-04-03 11:34 |显示全部楼层
查 printf 的控制参数,提示你一下, \n 是换行, \t 是 tab 。

论坛徽章:
0
发表于 2009-04-03 11:59 |显示全部楼层

回复 #2 prolj 的帖子

\n是换行,\t是制表位。
这个我知道。
我说的是把字符串写到文件中,分别3行。

论坛徽章:
0
发表于 2009-04-03 12:15 |显示全部楼层
无语了,写文件的时候在每个字符串后加'\n'就换行了,如果想在windows下看就是'\r\n'

论坛徽章:
0
发表于 2009-04-03 12:28 |显示全部楼层
呵呵,你们别说得那么隐晦嘛。。

直接跟楼主说,写完一行,后面再加个\n就完了

论坛徽章:
1
天蝎座
日期:2013-08-25 10:27:22
发表于 2009-04-03 12:45 |显示全部楼层
既然
“abc”  “=”  “123”(已实现)
了,

printf("%s\n%s\n%s\n", , , ,);

论坛徽章:
0
发表于 2009-04-03 13:01 |显示全部楼层
fprintf(fp,"%s\n%s\n%s\n","abc",“=","123”);
楼主这个问题悬赏的分太多了
哎,忍不住啊

论坛徽章:
0
发表于 2009-04-03 13:20 |显示全部楼层
楼主,读的文件如果很有规律,不妨试试fscanf
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP