封装Dom4j库

来源:互联网 发布:构建自己的linux系统 编辑:程序博客网 时间:2024/06/06 15:43
package cn.jnk.tools.xml;import java.io.File;import java.util.HashMap;import java.util.List;import java.util.Map;import org.dom4j.Document;import org.dom4j.Element;import org.dom4j.io.SAXReader;/** * 解析XML文件 *  * @author Nonkey Jiang * @since 2016-10-22 * @version 1.0 * */public class ResolveXmlUtils{/** * 读取xml文件 *  * @param path *            文件路径 * @return document xml对应的document */public static Document read(String path){if (null == path){return null;}Document document = null;try{SAXReader reader = new SAXReader();document = reader.read(new File(path));}catch (Exception e){e.printStackTrace();}return document;}/** * 获取xml的根节点 *  * @param document *            xml的dom * @return element xml的根节点 */public static Element getRootElement(Document document){if (null == document){return null;}return document.getRootElement();}/** * 读取指定节点的所有子节点 *  * @param node *            节点名 * @return List<Element> 子节点集合 */public static List<Element> getElements(Element node){if (null == node){return null;}@SuppressWarnings("unchecked")List<Element> list = node.elements();return list;}/** * 读取指定节点的指定子节点 *  * @param node *            父节点名 * @param childNode *            子节点名 * @return List<Element> 子节点集合 */public static Element getElement(Element node, String childNode){if (null == node || null == childNode || "".equals(childNode)){return null;}return node.element(childNode);}/** * 批量获取element的属性 *  * @param element *            需要获取属性的对象 * @param arg... *            属性列表 *  * @reuturn map<key,value> 属性对 *  */public static Map<String, String> getAttributes(Element node, String... arg){if (null == node || arg.length == 0){return null;}Map<String, String> attrMap = new HashMap<String, String>();for (String attr : arg){String attrValue = node.attributeValue(attr);attrMap.put(attr, attrValue);}return attrMap;}/** * 获取element的单个属性 *  * @param element *            需要获取属性的对象 * @param attr *            属性名 *  * @reuturn String 属性值 *  */public static String getAttribute(Element node, String attr){if (null == attr || "".equals(attr)){return "";}return node.attributeValue(attr);}}

0 0
原创粉丝点击