doc转html在tomcat8下乱码

来源:互联网 发布:窗户打开方式 知乎 编辑:程序博客网 时间:2024/06/13 03:53

项目中有使用WordToHtmlConverter将word文档转成HTML页面的功能,在tomcat6中运行没有问题,最近迁移到tomcat8后出现了乱码问题,docx正常但是doc文档转html会出现乱码。

使用sublimetext直接打开生成的jsp页面是乱码的但是装上ConvertToUTF8插件是可以转成正常文字的

TransformerFactory tf = TransformerFactory.newInstance();  Transformer serializer = tf.newTransformer();  serializer.setOutputProperty(OutputKeys.ENCODING, "GB2312");  serializer.setOutputProperty(OutputKeys.INDENT, "yes");  serializer.setOutputProperty(OutputKeys.METHOD, "html");  serializer.transform(domSource, streamResult);  out.close();  writeFile(new String(out.toByteArray()), outPutFile);  
File file = new File(path);fos = new FileOutputStream(file);bw = new BufferedWriter(new OutputStreamWriter(fos,"GB2312"));

测试将上面两处设计字符编码的地方都修改成utf-8,生成的文件乱码并且无法转成正常文字,推测doc文档转html代码后默认使用GB2312,为什么在运行后的页面上显示乱码还不知道,但是发现转换成的jsp页面头部少一行代码:

<%@ page language='java' contentType='text/html; charset=GB2312' pageEncoding='utf-8'%>

于是在写文件之前将这行代码加在new String(out.toByteArray())前面就可以在页面上显示正常的文字了。

原创粉丝点击