【发布时间】:2016-05-10 05:27:49
【问题描述】:
我在Win 7上使用Python 3.4,遇到以下问题:
我想将多行 unicode 文本写入一个文本文件,用户可以使用标准 Windows 编辑器(我知道...)打开该文本文件,无需任何特殊说明。我已经发现这个编辑器显然需要一个 BOM 来理解编码实际上是 UTF-8:
with codecs.open(r'c:\configfile.txt', 'w', encoding='utf-8-sig') as cf:
cf.write("""Test1
Test2 öäüß
Test3""")
现在我注意到,在这段代码中,所有换行符都写为 0x0a 而不是 0x0d 0x0a,Windows 编辑器无法识别,因此它在一行中显示所有内容。
长话短说:将多行 unicode 文本字符串写入可使用 Windows 编辑器打开和编辑的文件的安全方法是什么?
【问题讨论】:
标签: python windows unicode utf-8 editor