OpenRefine选择中文文件时文件名乱码的解决办法
OpenRefine中文文件名乱码
在使用OpenRefine导入中文文件时,例如如下的Excel文件数据:
当在OpenRefine中选择该文件并上传后,如下图所示:
点击下一步后,会发现文件名和sheet页面的名字出现了乱码:
但是实际上文件内部的文字并没有乱码的出现,出现这个问题的原因是OpenRefine读取文件名的时候编码不是utf-8的原因,所以需要调整文件名解析的编码方式。
在使用OpenRefine时有两种方式——直接运行OpenRefine.exe,或者利用cmd打开命令窗口后,输入refine.bat,如下图所示:
无论是哪种方式打开,都有一个相应的配置文件来控制打开时的一些参数设置:与OpenRefine.exe文件对应的配置文件为OpenRefine.l4j.ini文件,与refine.bat对应的配置文件为refine.ini文件,前者利用文本类工具打开后内容如下所示:
只需要在其中添加一句 -Dfile.encoding=UTF-8 即可,如下图所示:
如果是用cmd窗口中运行refine.bat命令的方式启用OpenRefine工具,则需要在refine.ini文件中进行相应的修改,增加一句 JAVA_OPTIONS=-Dfile.encoding=UTF-8,如下图所示:
这样修改后,无论是直接运行exe的方式,还是通过命令行的方式,再打开OpenRefine工具后,中文的文件名就不会再出现乱码现象了,如下图所示:
最后说一句,OpenRefine的数据库相关的翻译文件放在OpenRefine\webapp\extensions\database\module\langs路径下的对应JSON文件中,如下图所示: