我把我的MySQL表弄得乱七八糟,它们太旧了,我把字符集弄乱了很多。结果是,当我将这个转储文件导入到一个新数据库中时,我的表和结果HTML页面中到处都是某种从UTF8到ASCII的字符(就像标题中的字符一样)。
我创建了一个bash脚本来转换这些字符中的大多数:http://pastebin.com/fngz7qK2
但我不喜欢这种蛮横的强制转换。
我甚至不想找出我的SQL表出了什么问题,但我想知道是否有一种简单的或标准的方法可以将这些奇怪的字符转换为更常规的字符?
发布于 2015-02-02 05:09:11
如果源文本文件确实是双utf8编码的(将utf8字符作为ISO-8859-1字符代码编号,并使用utf8字符代码到字节序列的转换算法对其进行编码),那么您对该文件所做的转换是完全有效的。不过,您可能应该通过utf8 -to-iso8859-1-转换运行文本文件,并将结果视为utf8,从而反转无关的iso-8859-1-to-utf8转换。在linux上,您可能希望使用iconv -f utf8 -t latin1而不是即席转换。
https://stackoverflow.com/questions/28267857
复制相似问题