【问题标题】:Why can't I view Chinese characters correctly in a dbf file?dbf文件为什么不能正确查看汉字?
【发布时间】:2014-12-26 17:22:01
【问题描述】:
我正在尝试将数据从dbf导入数据库,一切都很好,除了带有汉字的列。
但是,我怀疑源文件本身存在问题,而不是与导入过程有关。我还听说人们在 Windows 中做完全相同的事情没有问题,因为 dbf 文件正确显示了汉字,但在 OS X 上它只是显示了一堆奇怪的字符。
下面是 TextEdit 的屏幕截图:
这是导入 MySQL 数据库后的屏幕截图:
我将不胜感激任何有关此的帮助和想法。
【问题讨论】:
标签:
mysql
dbf
chinese-locale
【解决方案1】:
正确构造的dbf 文件有一个嵌入字段,其中包含字符字段的编码。文本编辑器对此一无所知。 MySQL 应该,但可能不会(我不是 MySQL 用户,所以不知道)。
假设 dbf 构造正确,您可以使用 dbf 导出程序创建包含数据的 utf-8 文本文件,然后将其导入。
如果您能够使用Python,您可以使用我的dbf module 来执行此操作。
【解决方案2】:
Ethan 是对的 - MySQL 不知道您尝试导入的字符是中文。我认为可能的解决方案是将 DBF 文件的所有字符转换为 UTF-8 编码(这是 MySQL 的原生编码),然后将其导出到 MySQL 数据库。
可能的方法是使用DBF Commander Pro 编辑器。打开 DBF 文件,点击 'File -> Convert -> ANSI to UTF-8'。有关转换例程的更多信息,请访问here。
转换后,尝试使用 DBF Commander Pro 或您之前使用的工具将 DBF 文件import 到 MySQL 数据库。
该程序的全功能 30 天试用版可让您免费完成任务。