繁体   English   中英

Python将行写入UCS-2 LE BOM编码的文本文件

[英]Python write lines to a UCS-2 LE BOM encoded text file

我在Python 3.7中有一组文本字符串。

现在,我想将它们全部写入文本文件。 问题在于,该文本文件必须以UCS-2 LE BOM编码(这就是它在Notepad ++中的编码说明),否则该文件将无法继续处理。

如何在文本字符串保持可读性的同时将文本字符串写入文件中?

    with open(textpath, "w", encoding='utf-16-le') as f:
    for line in newlines:
        f.write(line)

这不起作用,因为它会产生乱码...

尝试编写一个明确的BOM:

with open(textpath, "w", encoding='utf-16-le') as f:
    f.write('\ufeff')
    for line in newlines:
        f.write(line)
        # Perhaps you also need to add a newline after each line?
        f.write('\n')

如果您的行已经有换行符,显然可以还原最后添加的内容。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM