【问题标题】:converting byte object to utf-8将字节对象转换为 utf-8
【发布时间】:2020-06-10 06:52:17
【问题描述】:
k = b'\xf2-\x92\xe7\x98\x90@\xddF\xbf\x13I4\x92\x0f\xc5'

我尝试使用“utf-8”进行编码,但出现错误

utf-8' codec can't decode byte 0xf2 in position 0: invalid continuation byte

如何正确地将其转换为字符串对象?

【问题讨论】:

  • 你必须从源头上找出这个字节序列是怎么来的。很难猜出这样的事情。
  • 这有可能被压缩了吗?

标签: python-3.x utf-8 byte


【解决方案1】:

#更新 好的,我必须查看您的字节,这是您需要使用的错误编码 ISO-8859-1

encoding = 'ISO-8859-1'
k = b'\xf2-\x92\xe7\x98\x90@\xddF\xbf\x13I4\x92\x0f\xc5'.decode(encoding)
print(type(k))

这将解决问题

【讨论】:

  • 这是一种将字节转换为 utf-8 的方法
  • OP 没有列出他做过的任何事情,所以这是我之前做过的事情
  • @MNM 使用 Latin-1 解码此字符串不会返回任何有用的信息。 技术上,可以使用 Latin-1 解码任何字节序列——它永远不会引发异常。但在这种情况下,输出只是一串乱码,而不是文本,正如您对文本编码所期望的那样。
猜你喜欢
  • 2015-10-08
  • 1970-01-01
  • 1970-01-01
  • 2012-09-22
  • 2011-06-05
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2010-11-03
相关资源
最近更新 更多