在Python 2.7中运行Ubuntu这段代码:
f = open("testfile.txt", "w")
f.write("Line one".encode("utf-16"))
f.write(u"\r\n".encode("utf-16"))
f.write("Line two".encode("utf-16"))
Run Code Online (Sandbox Code Playgroud)
在Gedit中读取时,在两行文本之间生成所需的换行符:
Line one?
?Line two
Run Code Online (Sandbox Code Playgroud)
但是,在Windows 7中执行并在记事本中读取的相同代码会在"第一行"之后生成难以理解的字符,但记事本不会识别换行符.如何在Windows中为UTF-16编写正确的换行符以匹配我在Ubuntu中获得的输出?
我正在为只能读取Unicode UTF-16的Windows应用程序编写输出.我花了好几个小时尝试不同的提示,但似乎没有任何东西适用于记事本.值得一提的是,我可以在记事本中成功将文本文件转换为UTF-16,但我宁愿让脚本首先正确保存编码.