Skip to content
This repository has been archived by the owner on Sep 24, 2021. It is now read-only.

中文及乱码问题的解决

iambus edited this page Feb 17, 2013 · 3 revisions

有时候因为系统(特别是类似路由器的小设备)的中文支持比较弱,无法正确判断出编码,会出现乱码甚至抛错的情况。可以尝试使用lx config encoding来配置编码。大多数情况设置成utf-8或者gbk就可以解决问题:

lx config encoding utf-8
lx config encoding gbk

可以使用lx diagnostics来做个简单的检查(提交相关issue的时候请附上此输出)。

如下输出表示编码应使用gbk:

>lx diagnostics
default_encoding -> mbcs
sys.getdefaultencoding() -> ascii
sys.getfilesystemencoding() -> mbcs
print u'\u4e2d\u6587'.encode('utf-8') -> 涓枃
print u'\u4e2d\u6587'.encode('gbk') -> 中文

如下输出表示编码应使用utf-8:

>lx diagnostics
default_encoding -> utf8
sys.getdefaultencoding() -> ascii
sys.getfilesystemencoding() -> UTF-8
print u'\u4e2d\u6587'.encode('utf-8') -> 中文
print u'\u4e2d\u6587'.encode('gbk') -> ▒▒▒▒

如果不知道编码是什么可以自己随意尝试下。

有时候如果程序不异常退出,但不管怎么设置编码中文都无法正常显示,可能不是程序本身的问题,而是系统或终端的区域编码设置问题。

Clone this wiki locally