yam*_*ams 2 java ms-word apache-poi
我当然有一些代码将.doc文档转换为html,但我用来将.docx转换为文本的代码却不能得到文本并将其转换.以下是我的代码.
private void convertWordDocXtoHTML(File file) throws ParserConfigurationException, TransformerConfigurationException, TransformerException, IOException {
XWPFDocument wordDocument = null;
try {
wordDocument = new XWPFDocument(new FileInputStream(file));
} catch (IOException ex) {
Exceptions.printStackTrace(ex);
}
WordToHtmlConverter wordToHtmlConverter = new WordToHtmlConverter(DocumentBuilderFactory.newInstance().newDocumentBuilder().newDocument());
org.w3c.dom.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();
String result = new String(out.toByteArray());
acDocTextArea.setText(newDocText);
String htmlText = result;
}
Run Code Online (Sandbox Code Playgroud)
关于为什么这不起作用的任何想法将非常感激.ByteArrayOutput应返回整个html但它是空的并且没有文本.
Mark,您使用的是仅支持.doc格式的HWPF软件包,请参阅此说明.该文档还提到了.docx通过XWPF包提供文件接口的尝试.但是,他们似乎缺乏人力资源,鼓励用户提交扩展.但是应该提供有限的功能,提取文本必须是其中之一.
您还应该看到这个问题:如何使用apache POI提取docx(上面的单词2007).
| 归档时间: |
|
| 查看次数: |
9476 次 |
| 最近记录: |