c/c++中txt文件读写换行怎么实现

 我来答
轩辕识屠代
2020-02-25 · TA获得超过3万个赞
知道大有可为答主
回答量:1.1万
采纳率:27%
帮助的人:899万
展开全部
"\r\n"其实是回车和换行两个字符
"\n"是
new
line,换行。
"\r"是
carriage
return,回车。
在mac系统中的文本换行只用"\r",在unix系统中只用"\n",在我们最常用的windows系统中是"\r\n"。
楼主的写法会受到程序的字符集影响。如果是mbcs字符集中,"\n"就可以进行文本换行,"\r\n"在某些文本编辑器中会转换成两个换行符。
windows自带的记事本对于换行符的识别能力很弱,你用程序写入"\r\n"进行换行,但直接在记事本中回车就只添加了"\n",再次打开时很容易出错的。
解决方法:
建议你用mfc的cstring类存储字符串,并在写入时用str=_t("test.\n");的写法。对文本文件的写入用cstdiofile类的writestring函数,它可以实现对不同字符集的回车转换。
如果程序字符集是unicode的话,别忘记在文本文件头部加入bom头。具体请参阅msdn
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式