Home > Database > Mysql Tutorial > body text

中文乱码问题几则

WBOY
Release: 2016-06-07 16:40:04
Original
1453 people have browsed it

以下是几则和中文乱码有关的问题和解决方案,包括:Windows下matplotlib中文乱码、SecureCRT终端中的VI中文乱码、crontab发送邮件中文乱码、MySQL中文乱码问题等。 1.解决Windows下matplotlib中文乱码问题 (updated @ 2013-05-31) 详见之前发的《解决matplot

以下是几则和中文乱码有关的问题和解决方案,包括:Windows下matplotlib中文乱码、SecureCRT终端中的VI中文乱码、crontab发送邮件中文乱码、MySQL中文乱码问题等。

1.解决Windows下matplotlib中文乱码问题

(updated @ 2013-05-31)

详见之前发的《解决matplotlib中文乱码问题(Windows)》一帖。

2.解决SecureCRT终端中的VI中文乱码问题

(updated @ 2013-12-11)

首先,设置SecureCRT的字符集为UTF-8,具体为:Session Options:Appearance:Character为UTF-8。

然后,在~/.bash_profile文件末尾添加:

export LANG="zh_CN.UTF-8"
export LC_ALL="zh_CN.UTF-8"
Copy after login

在~/.vimrc中添加:

"中文乱码问题
set termencoding=utf-8
set fileencodings=utf-8,gb18030,utf-16,big5
Copy after login

最后,必须打开新的终端进行测试(否则得到的结果并不一定正确)。

在VI的配置中,termencoding是指VI所工作的终端的字符编码方式;而fileencodings是指当前编辑的文件的字符编码方式列表,VI会自动检测这个列表,并将最终检测到的字符编码方式设置给fileencoding。

3.解决crontab邮件中文乱码问题(CentOS)

(updated @ 2013-12-11)

网上看到的文章中方法一般都是添加LANG=zh_CN.UTF-8,但是发现我这样设置后依然不可以。此外,发现原始邮件内容显示正确,但是编码错误(为ANSI_X3.4-1968)。因此,对于这种情况的修改方法是:在crontab –e后,添加一行:

CONTENT_TYPE=text/plain; charset=UTF-8
Copy after login

4.解决MySQL中文乱码问题(Ubuntu)

(updated @ 2014-02-26)

首先,进入MySQL,查看字符集问题所在:

show variables like '%chara%';
Copy after login

如果看到字符集非utf8(除character_set_filesystem外),而是latin1等,则说明需要修改字符集。

编辑/etc/mysql/my.cnf,在[client]和[mysqld]下添加default-character-set = utf8。在[client]下添加default-character-set=utf8,在[mysqld]下添加character-set-server=utf8。

重启MySQL(/etc/init.d/mysql restart),重新进入并查看字符集是否已修复。

Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template