记事本忽略换行符

记事本忽略换行符

最近我在 Windows 7 下使用 notepad.exe 打开的大多数文档都没有换行符...所有内容都一起运行。在任何其他程序中打开相同的文档,甚至在 Explorer 中直接预览,都会正确显示换行符。许多 .info 文件、.css、.js 都存在这种情况。但不是全部。

我猜这是某种字符编码 unix 行尾之类的东西,但我想知道我是否可以做些什么,或者其他人是否经历过类似的事情,以及我是否可以让记事本正常工作。对于某些用途,我更喜欢它而不是 notepad++/其他文本编辑器。

答案1

有换行符,但是不同的操作系统识别换行符的序列不同。

记事本仅识别 CR、LF(0x0d、0x0a),而其他来源可能仅使用 CR 或仅使用 LF。

您无法让记事本的行为有所不同,因此您唯一的选择是确保内容具有适合记事本的正确顺序。请注意,记事本是唯一具有此限制的编辑器,因此如果您的内容在记事本中有效,那么它在其他地方也有效。

修复换行符的一个简单方法是将文本复制并粘贴到 Word 中,然后再放回到记事本中,换行符就会“更正”为 CR、LF 序列。

答案2

写字板

如果您不喜欢 notepad++ 和其他文本编辑器,因为它们不是所有 Windows 系统的标准组成部分,请使用 Wordpad。它不像 Notepad 那么简陋。

写字板将正确读取并显示带有 Unix 行尾的文本文件。

其他

如果您不喜欢这两个真正的文本编辑器,那么 notepad++ 可能是个不错的选择。

答案3

由于 OP 中特别提到了 Notepad++,它(至少现在)具有以下所需的设置:

编辑--> EOL 转换--> Windows 格式。

答案4

您需要更改文件中使用的换行符编码类型。

在 Linux 中,有一个名为“unix2dos”的程序可以为您完成此操作。我不确定 Windows 是否附带这样的程序,但似乎这里有一个类似的程序: http://www.thefreecountry.com/tofrodos/

维基百科中有更多有关此过程的信息: http://en.wikipedia.org/wiki/Unix2dos 您可以在那里获得可以执行更改的不同命令行程序的示例。

相关内容