jodconverter转换ms文件都没有出现中文问题,但是在转换最简单的纯文本文件时却出现中文问题。我开始时找了cpdetecter来探测纯文本文件的编码格式,但是对一些文件的编码格式还是探测不对,所以想通过它探测到文本文件的编码格式,再将它转为UTF-8的方式来实现文本的统一编码方式(演示代码见下面)是行不通的:
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
public class changeCharacterFormat {
public static void main(String[] args) throws Exception{
InputStreamReader in = new InputStreamReader(
new FileInputStream("D:\\test\\File\\新建 文本文档 (2).txt"),"GB2312");//按原文件的编码方式进行读取文件信息
OutputStreamWriter out = new OutputStreamWriter(
new FileOutputStream("D:\\test\\File\\新建 文本文档 (2)8.txt"),"utf-8");//转换为自己想要的编码格
char[] cbuf = new char[1024];
int n;
while((n=in.read(cbuf))!=-1){
out.write(cbuf, 0, n);
}
in.close();
out.close();
}
}
如是就试着将纯文本文件(如*.java,*.c,*.log,*.xml,*.mxml,*.jsp,*asp,*.js等等)的后缀改为.txt再打由openoffice打印成pdf,它是可以打印,但是对于有中文的文件,它就会出现乱码。后来我将它们改为*.odt的后缀后就可以正确地打印成pdf,显示出正常的中文。这里其实是这样的,我将它们改为.odt后缀后,那么再用jodconverter来打印时,它就会调用openoffice来打印,那么就相当于它用openoffice打开它的odt格式的文件,再点击打印成pdf;因为它对*.odt文件支持中文,所以它打开它时,中文是正确的,其实它在读这个非odt的纯文本文件时,它就能识别出它的编码格式,所以就不用我们再去找那个原文件的编码格式,再进行转换,我们可以直接打印。所以关键还是理解jodconverter的打印原理,它不过是对openoffice的打印接口的调用,所以我们若将如*.jsp等文本改后缀名为*.txt,因为*.txt不是由openoffice直接产生的文本格式,所以对它的支持力度就没有将这些文件改后缀名为*.odt的好,因此将其它非odt的纯文本文件改名为odt文本文件时,它打印出pdf时能正确显示中文,而改名为txt后缀时,出现乱码的主要原因。
分享到:
相关推荐
利用jodconverter--doc2pdf
jodconverter-2.2.2 在2.2.1的基础上新增了对docx/xlsx转pdf,配合openoffcie使用,可以通过java实现对word和excel转pdf的操作
jodconverter做Office文档预览时,中文字符集以及字体的资源文件; 在做预览时,有客户反馈说部分文档无法预览;网上搜索发现是中文的字符集的问题;在原来的转换命令上增加配置【-s languagedir=D:\\xpdf】; 这个...
利用jodconverter-core-3.0-beta-4.jar包解决office转pdf,同时解决excel转pdf,excel列数太多的时候,分成很多pdf页的问题
开发过程中经常会使用java将office系列文档转换为PDF, 一般都使用openoffice+jodconverter 实现转换文档。
绝对好用 别人50积分 我5分就可下载 欢迎好评 下载后解压 mvn install:install-file -Dfile=D:\pdf\jodconverter-2.2.2.jar -DgroupId=com.artofsolving -DartifactId=jodconverter -Dversion=2.2.2 -Dpackaging=...
linux和windows安装openOffice java通过jodconverter 将excel、doc文件转成pdf或html,比2.2.1版本相比 提供office 2007版本支持 maven是只有2.2.1版本的maven依赖; maven 安装jar包到本地命令 mvn install:install-...
文件预览时用到的jodconverter.jar-我自己收藏用,方便以后使用
解决openOffice jodconverter-2.2.1包不能将2007及以上office转为PDF和解决txt乱码问题
JodConverter一个Java的OpenDocument 文件转换器,可以进行许多文件格式的转换,它利用OpenOffice所提供的转换介面来进行转换工作,它能进行以下的转换工作: 一、Microsoft Office格式转换为OpenDocument,以及...
支持将Word2003,word2007等以上版本,将office如Word,excel,ppt等资源转换为pdf
jodconverter-2.2.2.jar架包 jodconverter word文档转换pdf格式工具架包,亲测使用
仿百度文库解决方案(四)——利用JODConverter调用OpenOffice.org服务转换文档为PDF 仿百度文库解决方案(五)——利用SWFTools转换PDF文档为SWF 仿百度文库解决方案(六)——利用FlexPaper显示Flash(SWF)
做文件docx文件在线预览,openOffice的docx文件转pdf文件的时候需要jodconverter-2.2.2.jar的jar包,而maven镜像资源里的版本只更新到2.2.1。需要手动引入该jar包, cmd控制台的引入指令:mvn install:install-file ...
包含: jodconverter-2.2.2.jar jodconverter-cli-2.2.2.jar 根据需要下载
用jodconverter将pdf格式传成swf格式用swftools显示,有打印复制下载功能
JODConverter,是一个Java的OpenDocument文件转换器,可以进行许多文件格式的转换。它依赖于OpenOffice.org或者LibreOffice提供的服务来进行转换,它能将Microsoft Office文档(Word,Excel,PowerPoint)转换为PDF...
NULL 博文链接:https://steal.iteye.com/blog/2033646
jodconverter,java生成pdf文件。主要的功能是用来做各种档案的转换. 支持Word,Excel,PowerPoint转PDF