• 6247阅读
  • 5回复

[已解决]如何选择用\n还是\n\r [复制链接]

上一主题 下一主题
离线280923299
 
只看楼主 倒序阅读 楼主  发表于: 2009-03-13
— 本帖被 XChinux 执行加亮操作(2009-03-13) —
提一个问题:

在Win32上,notepad.exe只能读每行结尾是\n\r的,如果用Unix里的\n则显示方框。

我有一个程序,需要保存为.txt文件,但是用QTextStream读取textEdit中的文本进行保存,会默认存为\n的文件。

我想在win32中使用\n\r,在unix中使用\n,不知道有没有直接的API可以处理?

没有的话,是不是要把\n替换成\n\r?
[ 此帖被280923299在2009-03-14 08:20重新编辑 ]
离线lugaideath

只看该作者 1楼 发表于: 2009-03-13
\n 是换行!\r是回车!
\n好像是不代表该行已经到了结尾的!
自己替换掉吧!
只看该作者 2楼 发表于: 2009-03-13
QIODevice::Text
0x0010
When reading, the end-of-line terminators are translated to '\n'. When writing, the end-of-line terminators are translated to the local encoding, for example '\r\n' for Win32.
离线洞里的火
只看该作者 3楼 发表于: 2009-03-13
\n即可
跨平台的程序自己会替换成正确的符号的。Qt的要求是用Text打开,而Vim和Visual Studio 2005及以上则会自动识别换行符

注:win平台是\r\n,Linux是\n,还有一些Mac用的是\r
离线280923299
只看该作者 4楼 发表于: 2009-03-14
谢谢二楼,我把原来的OpenMode:WriteOnly,改成了QIODevice::Text就好了。。
离线q3344520love
只看该作者 5楼 发表于: 2009-03-14
快速回复
限100 字节
 
上一个 下一个