【发布时间】:2013-07-29 14:57:18
【问题描述】:
我正在使用以下命令将数据从我的数据库导出到 csv:
mysqldump -u root -p -T/home/xxx/stock_dump -t --fields-terminated-by=";" products stock
但是数据库是 UTF-8 格式,这个命令错误地导出了 UTF-8 字符,例如
ŻYWIEC ZDRÓJ 是ĂÂťYWIEC ZDRĂâJ
如何以正确的 UTF-8 格式导出它?
添加 --default-character-set=utf8 根本没有帮助。
或者如果不可能,我如何以最简单的方式对其进行后处理? iconv 可以做些什么吗?
【问题讨论】:
-
您的文件可能没有显示为 utf8 吗?有 BOM 吗?
-
您确定导出的文件不是UTF8格式吗?如果是这样,但你阅读它的方式是把它解释为别的东西怎么办?像这样的编码问题很烦人,因为每次查看数据时,它都会被解释,并且可能会被错误地解释。如果您有已知格式的文本,您可以随时检查编码不一致。
-
我确定它是无效的,因为当我通过 PHP 生成它时,它具有完全不同的字符并且可以正确显示
标签: mysql csv utf-8 debian export-to-csv