问题描述:使用poi将.doc转换成html时,发现其将修订前的内容也显示出来了,而且html的标题无法控制,有时候会出现乱码,操作如下
编辑测试文档:修订状态(附件中可以下载该doc文档)
期望显示效果:最终状态
转换成html的效果:在修订中删除的内容会显示出来,而且导航栏,也就是html的title显示内容不是我想要的
实现代码:
public class Word2Html { public static void main(String argv[]) { try { //word 路径 html输出路径 convert2Html("D:/doctohtml/1.doc","D:/doctohtml/1.html"); } catch (Exception e) { e.printStackTrace(); } } public static void writeFile(String content, String path) { FileOutputStream fos = null; BufferedWriter bw = null; try { File file = new File(path); fos = new FileOutputStream(file); bw = new BufferedWriter(new OutputStreamWriter(fos,"utf-8")); bw.write(content); } catch (FileNotFoundException fnfe) { fnfe.printStackTrace(); } catch (IOException ioe) { ioe.printStackTrace(); } finally { try { if (bw != null) bw.close(); if (fos != null) fos.close(); } catch (IOException ie) { } } } public static void convert2Html(String fileName, String outPutFile) throws TransformerException, IOException, ParserConfigurationException { HWPFDocument wordDocument = new HWPFDocument(new FileInputStream(fileName));//WordToHtmlUtils.loadDoc(new FileInputStream(inputFile)); WordToHtmlConverter wordToHtmlConverter = new WordToHtmlConverter( DocumentBuilderFactory.newInstance().newDocumentBuilder() .newDocument()); wordToHtmlConverter.setPicturesManager( new PicturesManager() { public String savePicture( byte[] content, PictureType pictureType, String suggestedName, float widthInches, float heightInches ) { //html 中 图片标签中 显示的图片路路径 <img src="d:/test/0.jpg"/> return "d:/doctohtml/"+suggestedName; } } ); wordToHtmlConverter.processDocument(wordDocument); //save pictures List pics=wordDocument.getPicturesTable().getAllPictures(); if(pics!=null){ for(int i=0;i<pics.size();i++){ Picture pic = (Picture)pics.get(i); System.out.println(); try { //word中图片的存储路径 pic.writeImageContent(new FileOutputStream("D:/doctohtml/" + pic.suggestFullFileName())); } catch (FileNotFoundException e) { e.printStackTrace(); } } } Document htmlDocument = wordToHtmlConverter.getDocument(); ByteArrayOutputStream out = new ByteArrayOutputStream(); DOMSource domSource = new DOMSource(htmlDocument); StreamResult streamResult = new StreamResult(out); TransformerFactory tf = TransformerFactory.newInstance(); Transformer serializer = tf.newTransformer(); serializer.setOutputProperty(OutputKeys.ENCODING, "utf-8"); serializer.setOutputProperty(OutputKeys.INDENT, "yes"); serializer.setOutputProperty(OutputKeys.METHOD, "html"); serializer.transform(domSource, streamResult); out.close(); writeFile(new String(out.toByteArray()), outPutFile); } }
相关推荐
在给定的部分内容中,展示了如何使用Apache POI将Word文档转换为HTML。首先,通过创建HWPFDocument对象来读取Word文档。然后,使用WordToHtmlConverter进行转换,同时定义PicturesManager来处理文档中的图片,确保...
Apache POI 是一个开源项目,专门用于处理微软的Office文档格式,如Word(.doc, .docx)、Excel(.xls, .xlsx)等。在本案例中,我们关注的是如何使用Apache POI将Word文档转换为HTML格式,并且保持原有的样式、表格...
在Java环境中,Apache POI 提供了API,使得开发者能够读取、创建和修改这些文件。本篇将详细讲解如何使用Apache POI将Word文档转换为HTML格式,并介绍相关的代码示例和所需jar包。 首先,为了进行Word到HTML的转换...
"cms.rar_cms word_poi word html_poi word转HTML_poi转Word"这一标题提及的CMS可能是一个特定的项目或实现,它涉及到使用Apache POI库处理Microsoft Word文档,并将这些文档转换为HTML格式以供网页展示。Apache POI...
本篇文章将详细讲解如何利用Apache POI库进行Word内容提取及Word转HTML的过程,以及涉及的相关知识点。 Apache POI是一个开源项目,专为处理Microsoft Office格式的文件而设计,包括Word(.doc/.docx)、Excel(....
这在需要在网络上显示Word内容或者希望在网页上保持文档格式时非常有用。转换过程涉及解析Word文档的各个部分,如段落、表格和图片,并将它们转化为HTML元素。 3. **数据库数据导出到Excel** 使用Java POI,我们...
2. 创建一个Docx4j的WordprocessingMLPackage对象,加载POI解析出的Word文档内容。 3. 调用Docx4j的`WordprocessingMLPackage.toPDF()`方法,生成一个基于OpenXML的PDF文件。 4. 如果需要进一步优化PDF的格式和样式...
在IT行业中,尤其是在文档处理和Web开发领域,将不同格式的文档进行互转是一项常见的需求。本主题聚焦于如何利用Apache POI库将Word文档转换为HTML格式,从而实现在线阅读。Apache POI是一个强大的开源Java库,它...
使用POI对word文件内容进行html转换,并支持对目录进行提取,提取后保留目录原本的超链接格式,且转换后的html保留原有word样式。 适合人群:具备一定编程基础,工作1-3年的研发人员 能学到什么:可以学习到word文档...
标题提到的"poi3.8 doc,excel转html",指的是使用Apache POI库的3.8版本进行Microsoft Office文档(尤其是DOC和XLS)到HTML的转换。Apache POI是一个流行的Java库,专门用于读取、写入和操作Microsoft Office格式的...
Java中的Apache POI库是一个强大的工具,用于读取、创建和修改Microsoft Office格式的文件,包括Word(.doc和.docx)文档。在本案例中,我们关注的是如何使用POI将Word文档转换为HTML格式。这个过程对于在网络上展示...
spring poi将word2003转换成html,包含格式、包含图片
这在需要在线展示Word内容,或者在Web应用中处理Word文档的场景中非常有用。例如,可以实现批量转换服务,将大量的Word文档转换为适应Web浏览的HTML格式,同时保持原有的格式和样式。此外,这种转换也可以帮助消除...
在Java编程环境中,将Microsoft Word文档转换为HTML格式是一项常见的需求,这主要涉及到对文档内容的解析和重新格式化。Apache POI是一个流行的开源库,它允许开发者处理Microsoft Office格式的文件,包括Word(.doc...
在这个场景中,我们看到一个关于如何使用Java编程语言实现此功能的资源包:“利用poi+itextpdf进行word转pdf.rar”。这个压缩包包含源码、依赖库以及转换效果的示例,表明它提供了一种无需额外插件的解决方案。下面...
-首先导入word的时候读取word里面的全部内容。调用(ReadAndWriteDoc)然后将内容 传送到createPdf里面生成pdf。导入的时候读取采用poi /生成的时候采用的是itext 2.通过读取数据库更改原始的.doc文件、读取...
Java POI库是一个强大的工具,专门用于处理Microsoft Office格式的文件,包括Word(.doc和.docx)文档。在这个特定的场景中,我们利用POI将Word文档转换为HTML格式,以便于在网页上展示或者进行其他Web相关的操作。...
Apache POI是一个强大的Java库,专门用于处理Microsoft Office格式的文件,如Word(.doc和.docx)、Excel(.xls和....通过理解以上知识点,你可以利用Apache POI实现高效的Word到HTML的转换,确保内容和格式的一致性。