技术栈

技术栈

iTop二次开发教程-导出的CSV文件的中文字符乱码问题处理

4年前 (2020-01-29) 热度:1647 ℃

iTop-CMDB一般修改两个目录即可:

env-toolkit:插件安装目录

datamodels/2.x/itop-config-mgmt/datamodel.itop-config-mgmt.xml:配置管理网络设备

datamodels/2.x/itop-config-mgmt/zh_cn.dict.itop-config-mgmt.php:配置管理网络设备

extensions/itop-network-system/datamodel.itop-network-system.xml:

extensions/itop-network-system/zh.dict.itop-network-system.php:


在ITop中通过在导出“数据管理”->“CSV导入”->“模板”的CSV文件时,保存下来的各种模板.csv文件仍然会乱码。iTop在同样导出csv文件这样一个功能的时候,会在两个地方使用不同的方式生成csv文件。相当于必须同时修改这两处,才能保证导出的带内容的csv文件和模板csv文件都不出现乱码。


第一处:修改一个配置选项(修复系统绝大部分功能导出csv文件的中文乱码问题)


conf\production\config-itop.php


然后打开该文件,找到第49行,内容应该为

'csv_file_default_charset' => 'ISO-8859-1',

修改为:

//'csv_file_default_charset' => 'ISO-8859-1',

'csv_file_default_charset' => 'UTF-8',


改好后保存。

然后再把 刚才去掉的只读选项,选中,保证“只读”前面的对号出现,然后确定或应用,以此保证该文件仍然为只读文件。

这样改完以后,CSV导出的中文不乱码了。


第二处:修改一个csv导出程序,修复模板导出csv文件中文不乱码问题

找到文件安装目录下的\pages\csvimport.php,   我的是2.6.1版本csvimport.php没有这段代码,可以在ajax.csvimport.php里面修改。

打开文件,找到第435行,内容应该如下:

    $oPage->add($sResult);

把这一行修改为如下两行:

//    $oPage->add($sResult);

    $oPage->add("\xEF\xBB\xBF".$sResult);

然后保存文件。

这是,刷新模板导出的页面,重新导出模板的csv文件,打开新导出的csv文件试试看,中文显示就会正常


在2.62版本的情况下,导出还会乱码,但是通过导出 Excel文件就会正常了。


打赏
TAGS: itop

相关文章

删除无法右键删除的顽固文件

删除无法右键删除的顽固文件

新建一个文本文件输入DEL /F /A /Q \\?\%1 RD /S /Q \\?\%1然后将文本文档保存为.bat格式的。将无法删除的文件拖至.bat文件上就会自动删除了...

全网最全的网络端口号,收藏好!

全网最全的网络端口号,收藏好!

如果你经常接触网络工程, 那么常用协议和端口号请记住了,在工作中和面试中作用比较大,建议收藏! 计算机之间依照互联网传输层TCP/IP协议的协议通信,不同的协议都对应不同的端口。并且,利用数...

华为huawei交换机端口安全配置命令

华为huawei交换机端口安全配置命令

 华为交换机端口安全session 1 端口安全        在网络中MAC地址是设备中不变的物理地址,控制MAC地址接入就控制了交换机的端口接入,...

网络监控项目,超过254个点位如何设置IP地址?

网络监控项目,超过254个点位如何设置IP地址?

很多朋友都问到,对于大型监控项目如何设置ip地址?对于监控项目来说,很多故障的原因都是跟ip地址设置不当有关,如ip冲突,或者有几路监控图像没有显示等,都是跟ip有一定关联,合理的分配ip地址十分重要...

交换机端口只允许一个MAC地址通过-华为交换机和思科交换机

交换机端口只允许一个MAC地址通过-华为交换机和思科交换机

华为交换机mac-address aging-time 60秒  全局mac老化时间port-security enable   打开端口安全功能port-securit...

常用命令-查找端口对应的进程

常用命令-查找端口对应的进程

常用命令-查找端口对应的进程    netstat -nao    tasklist | findstr "8081"   &nb...