如何为Android将.doc解析为.html
我使用ApachePOI库,但它使用样式类名进行解析。我需要安卓无课。 这是我的密码:如何为Android将.doc解析为.html,android,html-parsing,apache-poi,doc,Android,Html Parsing,Apache Poi,Doc,我使用ApachePOI库,但它使用样式类名进行解析。我需要安卓无课。 这是我的密码: HWPFDocumentCore wordDocument = WordToHtmlUtils.loadDoc(input); WordToHtmlConverter wordToHtmlConverter = null; try { wordToHtmlConverter = new WordToHtmlConverter(DocumentBuilderFactor
HWPFDocumentCore wordDocument = WordToHtmlUtils.loadDoc(input);
WordToHtmlConverter wordToHtmlConverter = null;
try {
wordToHtmlConverter = new WordToHtmlConverter(DocumentBuilderFactory.newInstance().newDocumentBuilder().newDocument());
wordToHtmlConverter.processDocument(wordDocument);
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());
System.err.println(result);
} catch (ParserConfigurationException e) {
e.printStackTrace();
} catch (TransformerConfigurationException e) {
e.printStackTrace(); //To change body of catch statement use File | Settings | File Templates.
} catch (TransformerException e) {
e.printStackTrace(); //To change body of catch statement use File | Settings | File Templates.
}`
结果:
<html><head>
<style type="text/css">.b1{white-space-collapsing:preserve;}
.b2{margin: 0.90555555in 0.66944444in 0.66944444in 0.66944444in;}
.s1{text-transform:uppercase;color:black;}
.s2{font-weight:bold;text-transform:uppercase;color:black;}
.s3{color:black;}
.s4{font-style:italic;color:black;}
.s5{font-weight:bold;color:black;}
.s6{font-weight:bold;font-style:italic;text-transform:uppercase;color:black;}
.s7{font-weight:bold;color:maroon;}....</style>
</head>
<body>
<p class="p2"></p>
<p class="p2">
<span class="s2">...</span>
</p>
<p class="p2">
<br>
...</body>
</html>
.b1{空白折叠:保留;}
.b2{边距:0.90555555英寸0.66944444英寸0.66944444英寸0.66944444英寸;}
.s1{文本转换:大写;颜色:黑色;}
.s2{字体大小:粗体;文本转换:大写;颜色:黑色;}
.s3{颜色:黑色;}
.s4{字体样式:斜体;颜色:黑色;}
.s5{字体大小:粗体;颜色:黑色;}
.s6{字体大小:粗体;字体样式:斜体;文本转换:大写;颜色:黑色;}
.s7{字体大小:粗体;颜色:栗色;}。。。。
...
...
建议不使用类名进行解析。我需要androids的标准标记而不是类。解析生成的HTML并修改它以适应。嗨,有更新吗?