本文共 1337 字,大约阅读时间需要 4 分钟。
public static String toStringFromDoc(Document document) { String result = null; if (document != null) { StringWriter strWtr = new StringWriter(); StreamResult strResult = new StreamResult(strWtr); TransformerFactory tfac = TransformerFactory.newInstance(); try { javax.xml.transform.Transformer t = tfac.newTransformer(); t.setOutputProperty(OutputKeys.ENCODING, "UTF-16"); t.setOutputProperty(OutputKeys.INDENT, "yes"); t.setOutputProperty(OutputKeys.METHOD, "xml"); // xml, html, // text t.setOutputProperty("{http://xml.apache.org/xslt}indent-amount", "4"); t.transform(new DOMSource(document.getDocumentElement()), strResult); } catch (Exception e) { System.err.println("XML.toString(Document): " + e); } result = strResult.getWriter().toString(); try { strWtr.close(); } catch (IOException e) { e.printStackTrace(); } } return result; }
public static void main(String[] args) { URL url = ImitateService.class.getClassLoader().getResource("/In.xml"); String file = url.getFile(); DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance(); try { DocumentBuilder db = dbf.newDocumentBuilder(); Document doc = db.parse(file); String xml = toStringFromDoc(doc); LogUtil.info(xml); } catch (Exception e) { e.printStackTrace(); } }
没有依赖什么第三方的jar,都是jdk自带,引入包就行了。
转载地址:http://niuws.baihongyu.com/