ITPub博客

首页 > 应用开发 > IT综合 > UnicodeDecodeError: 'utf8'解决方法

UnicodeDecodeError: 'utf8'解决方法

原创 IT综合 作者:wzgchen 时间:2017-10-13 09:58:10 0 删除 编辑

  1. UnicodeDecodeError: 'utf8' codec can't decode byte 0xd4 in position x: invalid continuation byte
  2. 更多0
  3. pythonencode字符串
  4. 在执行下面语句时会报错

  5. o = "a test of \xe9 char" #I want this to remain a string as this is what I am receiving
  6. v = o.decode("utf-8")
  7. 错误堆栈信息如下:

  8. Traceback (most recent call last):
  9.  File "<stdin>", line 1, in <module>
  10.  File "C:\Python27\lib\encodings\utf_8.py",
  11.  line 16, in decode
  12.      return codecs.utf_8_decode(input, errors, True) UnicodeDecodeError:
  13.  'utf8' codec can't decode byte 0xe9 in position 10: invalid continuation byte
  14. 这是因为\xe9不是合法的utf-8字符,不符合utf-8的定义,对于这种情况可以这么处理:

  15. o = "a test of \xe9 char" #I want this to remain a string as this is what I am receiving
  16. v = o.decode('latin-1').encode("utf-8")
  17. print v


  18. 问题
  19. UnicodeDecodeError: 'utf-8' codec can't decode byte 0x80 in position 0: invalid start byte解决方法
  20. 解决:
  21. 这是因为\xe9不是合法的utf-8字符,不符合utf-8的定义,对于这种情况可以这么处理:
  22. li.append(line.decode('utf-8','ignore

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/91975/viewspace-2145935/,如需转载,请注明出处,否则将追究法律责任。

上一篇: Mysql日期计算
请登录后发表评论 登录
全部评论

注册时间:2015-05-01

  • 博文量
    383
  • 访问量
    179195