Entries Tagged as '乱码'

windows下ftp客户端上传东西到linux下的ftp server中文乱码的问题

很简单
windows xp下的缺省编码是gbk
linux缺省是utf8
这样直接弄上去不管是ftp上传还是rz上传
如果不转码都会导致中文乱码问题的
以前我发现有个方法可以绕开这个问题
我在windows下把要上传的东西打成一个大的rar
然后上传这个rar
最后再在服务器上用unrar解开
这样的话中文不会乱码
具体什么原因
没搞明白,估计rar会自动转码吧

我这里要讲的是通过ftp上传怎样避免乱码
这里主要是用到一个会自动转码的ftp server—-pure-ftpd
pure-ftpd支持一个配置参数:ClientCharset
这里设定的是ftp client(windows xp)的字符集
将其正确设定为gbk后
再通过windows上传东西的时候就会自动转码(gbk–>utf8)
于是就避免了中文乱码问题

注意:
debian系的配置比较奇怪
是在/etc/pure-ftpd/conf/目录下建立一个文件:ClientCharset
里面就一行内容:gbk

数据从mysql4.1.x倒到mysql5.0.x后中文乱码的问题

今天
把个系统从一台机器上挪到另外一台机器
由于牵涉到数据库升级
(原来的是4.1.x,中文数据编码是gbk;新的是5.0.x,中文数据编码想用utf-8)
所以就比较留心
首先把数据dump出来
mysqldump db1>db1.sql
然后传到新的服务器上
scp db1.sql xxx.xxx.xxx.xxx:/tmp/
再在新的机器上做编码转换
iconv -f gbk -t utf-8 db1.sql>db1utf8.sql
再倒入新的库
mysql db1 然后发现web页面显示需要选gbk才不乱码(跟在老机器上一样)
最后在老机器上dump时加参数指定缺省character-set
mysqldump --default-charcter-set=latin1 db1>db11.sql
这样做的数据拷到新机器上后

iconv -f gbk -t utf-8 db11.sql>db11utf8.sql
再倒入
就没有问题了(库里存的是utf8的数据了)