【发布时间】:2019-04-12 07:39:09
【问题描述】:
我有一个 powershell 脚本,我试图读入它并对其进行一些分析。我只能将其读取为字节而不是纯文本。
f=open('~/Data/3 - Get-Services - Jobs Version 1.0.ps1','r')
txt=f.read()
当我尝试上面的代码时,我抛出了一个错误。
UnicodeDecodeError: 'utf-8' 编解码器无法在位置解码字节 0xff 0:无效的起始字节
所以,我尝试将其读取为字节,然后将其解码为纯文本,但我仍然抛出错误。
f=open('~/Data/3 - Get-Services - Jobs Version 1.0.ps1','rb')
txt=f.read()
txt.decode('utf-8')
UnicodeDecodeError: 'utf-8' 编解码器无法在位置解码字节 0xff 0:无效的起始字节
我在命令行上查找了数据,发现所有文件都以“��”开头。我觉得这个字符导致了问题,但我不知道如何解决这个问题。
你能帮忙吗
【问题讨论】:
-
未编码为 utf-8。
-
否。我说过 UTF-8 不是文件的编码格式。尝试另一种编码。好像是BOM,试试
'utf-8-sig' -
嗨,请尝试使用
utf-16进行解码,正如上述副本在答案中所建议的那样。 -
@YesThatIsMyName,感谢您的回答!将编码类型更改为
utf-16有效!谢谢你!
标签: python python-3.x file