java解析xml工具类_通过dom4j解析XML字符串XMLDocUtil工具类转换为XML文档及获取指定根节点及指定节点路径内容代码示例...

一、前言

通过dom4j解析XML文档的XMLDocUtil工具类,进行解析xml字符串为Document文档对象、获取根节点元素路径内容getRootElement、获取唯一路径节点的值getSingleNodeValue及获取节点集合的值getNodeSValue等相关节点元素方法处理。

二、代码示例import java.util.List;@b@import org.dom4j.Document;@b@import org.dom4j.DocumentException;@b@import org.dom4j.DocumentHelper;@b@import org.dom4j.Element;@b@import org.dom4j.Node;@b@@b@/**@b@ * XML文档处理工具类 @b@ */@b@public class XMLDocUtil {@b@  @b@    private Document xmlDoc; @b@private Element msgElement = null; @b@private static String XML_ENCODING = "UTF-8";@b@@b@/**@b@ * 创建默认(UTF-8)编码的XML文档@b@ */@b@public XMLDocUtil(){@b@createXmlDoc();@b@}@b@@b@/**@b@ * 创建指定编码的XML文档@b@ * @param xmlEncoding 编码@b@ */@b@public XMLDocUtil(String xmlEncoding){@b@XML_ENCODING = xmlEncoding;@b@}@b@@b@private void createXmlDoc(){@b@xmlDoc = DocumentHelper.createDocument();@b@xmlDoc.setXMLEncoding(XML_ENCODING);@b@}@b@@b@/**@b@ * @return 返回XML文档@b@ */@b@public Document getDocument(){@b@return xmlDoc;@b@}@b@@b@@b@/**@b@ * 把XML字符串转换为XML文档@b@ * @param xmlStr XML字符串@b@ * @return XML文档@b@ * @throws DocumentException@b@ */@b@public static Document parseStr2XML(String xmlStr) throws DocumentException{@b@return DocumentHelper.parseText(xmlStr);@b@}@b@@b@/**@b@ * 获取唯一路径节点的值@b@ * @param doc XML文档@b@ * @param nodePath 节点路径(唯一的)@b@ * @return@b@ */@b@public static String getSingleNodeValue(Document doc,String nodePath){@b@Node node = doc.selectSingleNode(nodePath);@b@return node.getText();@b@}@b@@b@/**@b@ * 获取节点集合的值@b@ * @param doc XML文档@b@ * @param nodePath 节点路径@b@ * @return@b@ */@b@public static List getNodeSValue(Document doc,String nodePath){@b@List list = doc.selectNodes(nodePath);@b@return list;@b@}@b@@b@public static void main(String[] args) {@b@        String s = "<?xml  version=\"1.0\" encoding=\"UTF-8\"?>小木人印象http://www.xwood.net";@b@        try {@b@            Document dom = parseStr2XML(s);@b@            System.out.println(dom.getRootElement().getPath());@b@            System.out.println(getSingleNodeValue(dom,"xwood/webname/text()"));@b@        } catch (DocumentException e) { @b@        }@b@    }@b@@b@@b@}

控制台打印结果小木人印象http://www.xwood.net@b@小木人印象

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值