perl用ODBC链接SQL server时写入的中文字变成乱码!怎么解决,是在windows系统上

perl用ODBC链接SQL server时写入的中文字变成乱码!怎么解决,是在windows系统上,第1张

use Encode

##For write

pack('N*', decode ('gbk', "中文字"))

##Reverse for reading

① 首先把MySQL的服务停掉 在运行窗口输入:net stop mysql

② 把服务器和客户端的字符集改成自己想用的字符集:GB2312或是utf8等……

具体 *** 作为:打开mysql安装目录下的myini.tet;

找到default-character-set,将其改为自己想用的字符集:GB2312或是utf8等……,要注意的是这里有两个default-character-set,用ctrl+f定位在文件最前面输入default就会找到,都要改过来;

③ 重启MySQL服务器,在运行窗口输入:net start mysql

④ 最重要的是一点是,到这里我们已经能够解决乱码问题了,可问题是我们依然还会出现乱码问题,这是因为我们现在的表被创建的时候用的是默认的字符集(latin1),所以这时候我们要把表删除,然后重建就可以了

因为你是直接写入ANSI格式的文本文件,故不存在编码的问题。

请你用记事本打开$outputFile1这个文件(.csv格式的),你会发现里面的内容可正常显示,且格式是ANSI的,所以乱码是你的英文版Excel所致。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/10860828.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-11
下一篇 2023-05-11

发表评论

登录后才能评论

评论列表(0条)

保存