如何让iTop导出的CSV文件的中文字符不乱码?[完整方案]
之前,admin管理员 根据在群里我们解决导出中文乱码的问题整理了一个帖子,导出各种带内容的csv文件都可以正常地显示中文字符。参见:
今天,群里的Red Jonh网友,发现一个新的问题,只是照上面的方法修改完成后,在导出“数据管理”->“CSV导入”->“模板”的CSV文件时,保存下来的各种模板.csv文件仍然会乱码。于是,我有研究了一下程序,发现奇怪的,iTop在同样导出csv文件这样一个功能的时候,在这两个地方使用不同的方式生成csv文件。相当于必须同时修改这两处,才能保证导出的带内容的csv文件和模板csv文件都不出现乱码。
为了大家查看和使用方便,我把之前的修改和本次研究的结果整理发布在下面: 第一处:修改一个配置选项(修复系统绝大部分功能导出csv文件的中文乱码问题) 找到截图中的这个文件

该文件如图所示,初始安装好以后缺省是 只读的,需要临时把“只读”那个对号 去掉,使文件可以被修改。
然后打开该文件,找到第49行,内容应该为 'csv_file_default_charset' => 'ISO-8859-1', 修改为: //'csv_file_default_charset' => 'ISO-8859-1', 'csv_file_default_charset' => 'UTF-8', 改好后保存。 然后再把 刚才去掉的只读选项,选中,保证“只读”前面的对号出现,然后确定或应用,以此保证该文件仍然为只读文件。 这样改完以后,CSV导出的中文不乱码了。 第二处:修改一个csv导出程序,修复模板导出csv文件中文不乱码问题 找到文件C:\xampp\htdocs\pages\csvimport.php, 打开文件,找到第435行,内容应该如下: $oPage->add($sResult); 把这一行修改为如下两行: // $oPage->add($sResult); $oPage->add("\xEF\xBB\xBF".$sResult); 然后保存文件。 这是,刷新模板导出的页面,重新导出模板的csv文件,打开新导出的csv文件试试看,是不是中文显示正常了? 希望大家喜欢。
今天,群里的Red Jonh网友,发现一个新的问题,只是照上面的方法修改完成后,在导出“数据管理”->“CSV导入”->“模板”的CSV文件时,保存下来的各种模板.csv文件仍然会乱码。于是,我有研究了一下程序,发现奇怪的,iTop在同样导出csv文件这样一个功能的时候,在这两个地方使用不同的方式生成csv文件。相当于必须同时修改这两处,才能保证导出的带内容的csv文件和模板csv文件都不出现乱码。
为了大家查看和使用方便,我把之前的修改和本次研究的结果整理发布在下面: 第一处:修改一个配置选项(修复系统绝大部分功能导出csv文件的中文乱码问题) 找到截图中的这个文件

该文件如图所示,初始安装好以后缺省是 只读的,需要临时把“只读”那个对号 去掉,使文件可以被修改。
然后打开该文件,找到第49行,内容应该为 'csv_file_default_charset' => 'ISO-8859-1', 修改为: //'csv_file_default_charset' => 'ISO-8859-1', 'csv_file_default_charset' => 'UTF-8', 改好后保存。 然后再把 刚才去掉的只读选项,选中,保证“只读”前面的对号出现,然后确定或应用,以此保证该文件仍然为只读文件。 这样改完以后,CSV导出的中文不乱码了。 第二处:修改一个csv导出程序,修复模板导出csv文件中文不乱码问题 找到文件C:\xampp\htdocs\pages\csvimport.php, 打开文件,找到第435行,内容应该如下: $oPage->add($sResult); 把这一行修改为如下两行: // $oPage->add($sResult); $oPage->add("\xEF\xBB\xBF".$sResult); 然后保存文件。 这是,刷新模板导出的页面,重新导出模板的csv文件,打开新导出的csv文件试试看,是不是中文显示正常了? 希望大家喜欢。