birt导出csv乱码问题解决

来源:互联网 发布:淘宝注册账号申请手机 编辑:程序博客网 时间:2024/06/05 18:26

 今天终于把这个问题解决了,导出的csv文件是乱码,主要是由于导出数据的时候的编码excel不能识别(如utf-8).为了解决这个问题,有几个必要的步骤要做.

1.下载birt源码,下载的方式通过cvs,新建一个repository,参数如下(密码为空):
connection type:pserver
user:anonymous
host:dev.eclipse.org
repository path:/cvsroot/birt

连接完成后,进入versions-->source这里有很多版本,我下载的是BIRT_2_1_1_Release_20060927 (Version)

2.找到输出csv数据的代码(具体怎么找的略过).找到org.eclipse.birt.report.viewer/birt/WEB-INF/classes/org/eclipse/birt/report/service/ReportEngineService.java. 找到extractData这个函数,这个函数是负责输出数据到csv文件的.这个函数里面有两个outputStream.write( buf.toString( ).getBytes(
       ParameterAccessor.UTF_8_ENCODE ) );把这两行语句改为outputStream.write( buf.toString( ).getBytes(
       "GBK" ) );

3.把修改了的文件进行编译,把这个class文件替换viewservlets.jar包中的ReportEngineService文件.最后在把这个包放到lib下.这样问题得到解决.

原创粉丝点击