📄 readerxml.java
字号:
package com.pub.util;
import org.jdom.input.SAXBuilder;
import org.jdom.Document;
import org.jdom.Element;
import org.jdom.xpath.XPath;
import java.util.ArrayList;
import java.util.List;
import org.apache.log4j.Logger;
import java.util.*;
public class ReaderXml {
static private Logger log = Logger.getLogger(ReaderXml.class);
public static Document loadDocument(String filename) throws Exception {
SAXBuilder sb = new SAXBuilder();
Document doc = sb.build(filename);
return doc;
}
public static Element loadSelectElement(String filename, String xpath)
throws Exception {
Document doc = loadDocument(filename);
Element root = doc.getRootElement();
List list = XPath.selectNodes(root, xpath);
Iterator iter = list.iterator();
if (iter.hasNext()) {
return (Element) iter.next();
} else {
return null;
}
}
public static Element loadElement(String filename, String xpath)
throws Exception {
Document doc = loadDocument(filename);
Element root = doc.getRootElement();
Element element = (Element) XPath.selectSingleNode(root, xpath);
return element;
}
public static Element loadElement(Document doc, String xpath)
throws Exception {
Element root = doc.getRootElement();
Element element = (Element) XPath.selectSingleNode(root, xpath);
return element;
}
public static List loadListElement(String filename, String xpath)
throws Exception {
Document doc = loadDocument(filename);
Element root = doc.getRootElement();
List list = XPath.selectNodes(root, xpath);
return list;
}
public static List loadListElement(Document doc, String xpath)
throws Exception {
Element root = doc.getRootElement();
List list = XPath.selectNodes(root, xpath);
return list;
}
public static boolean getAttributeBoolean(Element element, String name,
boolean def) {
boolean b = false;
try {
if (element.getAttributeValue(name).trim().equalsIgnoreCase("true")) {
b = true;
} else {
b = false;
}
} catch (Exception ex) {
b = def;
}
return b;
}
public static int getAttributeInteger(Element element, String name, int def) {
int i = 0;
try {
i = Integer.parseInt(element.getAttributeValue(name).trim());
} catch (Exception ex) {
i = def;
}
return i;
}
public static Long getAttributeLong(Element element, String name, long def) {
long l = 0;
try {
l = Long.parseLong(element.getAttributeValue(name).trim());
} catch (Exception ex) {
l = def;
}
return l;
}
public static String getAttributeString(Element element, String name,
String def) {
String s = "";
try {
s = element.getAttributeValue(name).trim();
} catch (Exception ex) {
s = def;
}
return s;
}
public static boolean getChildTextBoolean(Element element, String name,
boolean def) {
boolean b = false;
try {
if (element.getChildText(name).trim().equalsIgnoreCase("true")) {
b = true;
} else {
b = false;
}
} catch (Exception ex) {
b = def;
}
return b;
}
public static int getChildTextInteger(Element element, String name, int def) {
int i = 0;
try {
i = Integer.parseInt(element.getChildText(name).trim());
} catch (Exception ex) {
ex.printStackTrace();
i = def;
}
return i;
}
public static Long getChildTextLong(Element element, String name, long def) {
long l = 0;
try {
l = Long.parseLong(element.getChildText(name).trim());
} catch (Exception ex) {
l = def;
}
return l;
}
public static String getChildTextString(Element element, String name,
String def) {
String s = "";
try {
s = element.getChildText(name).trim();
} catch (Exception ex) {
s = def;
}
return s;
}
public static List getChildTextList(Element element, String name, List def) {
List l = new ArrayList();
try {
Element element1 = element.getChild(name);
l.add(element1.getTextTrim());
} catch (Exception e) {
l = def;
}
return l;
}
public static void main(String[] args) {
ReaderXml readerxml = new ReaderXml();
try {
Element e = ReaderXml.loadElement("./conf/GatewayConfig.xml","//gateway[@gatewayID=\"" + "1" +
"\"]");
System.out.println(e);
} catch (Exception e) {
e.printStackTrace();
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -