Java中文档对象模型DOM使用经验 - 编程入门网
作者 佚名技术
来源 NET编程
浏览
发布时间 2012-06-23
; } } /** * 给定一个输入流,解析为一个org.w3c.dom.Document对象返回。 * @param input * @return a org.w3c.dom.Document */ public static Document parseXMLDocument(InputStream input) { if (input == null) { throw new IllegalArgumentException("参数为null!"); } try { return newDocumentBuilder().parse(input); } catch (Exception e) { throw new RuntimeException(e.getMessage()); } } /** * 给定一个文件名,获取该文件并解析为一个org.w3c.dom.Document对象返回。 * @param fileName 待解析文件的文件名 * @return a org.w3c.dom.Document */ public static Document loadXMLDocumentFromFile(String fileName) { if (fileName == null) { throw new IllegalArgumentException("未指定文件名及其物理路径!"); } try { return newDocumentBuilder().parse(new File(fileName)); } catch (SAXException e) { throw new IllegalArgumentException("目标文件(" + fileName + ")不能被正确解析为XML!\n" + e.getMessage()); } catch (IOException e) { throw new IllegalArgumentException("不能获取目标文件(" + fileName + ")!\n" + e.getMessage()); } catch (ParserConfigurationException e) { throw new RuntimeException(e.getMessage()); } } /** * 给定一个节点,将该节点加入新构造的Document中。 * @param node a Document node * @return a new Document */ public static Document newXMLDocument(Node node) { Document doc = newXMLDocument(); doc.appendChild(doc.importNode(node, true)); return doc; } /** * 将传入的一个DOM Node对象输出成字符串。如果失败则返回一个空字符串""。 * @param node DOM Node 对象。 * @return a XML String from node */ public static String toString(Node node) { if (node == null) { throw new IllegalArgumentException(); } Transformer transformer = newTransformer(); if (transformer != null) { try { StringWriter sw = new StringWriter(); transformer.transform(new DOMSource(node), new StreamResult(sw)); return sw.toString(); } catch (TransformerException te) { throw new RuntimeException(te.getMessage()); } } return errXMLString("不能生成XML信息!"); } /** * 将传入的一个DOM Node对象输出成字符串。如果失败则返回一个空字符串""。 * @param node DOM Node 对象。 * @return a XML String from node */ public static String toString(Node node) { if (node == null) { throw new IllegalArgumentException(); } Transformer transformer = newTransformer(); if (transformer != null) { try { StringWriter sw = new StringWriter(); transformer.transform(new DOMSource(node),new StreamResult(sw)); return sw.toString(); } catch (TransformerException te) { throw new RuntimeException(te.getMessage()); } } return errXMLString("不能生成XML信息!"); } /** * 获取一个Transformer对象,由于使用时都做相同的初始化,所以提取出来作为公共方法。 * @return a Transformer encoding gb2312 */ public static Transformer newTransformer() { try { Transformer transformer =TransformerF |
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |
你可能对下面的文章感兴趣
关于Java中文档对象模型DOM使用经验 - 编程入门网的所有评论