- import java.util.List;
- import org.dom4j.Document;
- import org.dom4j.DocumentException;
- import org.dom4j.DocumentHelper;
- import org.dom4j.Element;
- /**
- * XML数据解析类
- * @author 李文锴
- */
- public class XMLOperate {
- /**
- * 解析XML数据
- */
- public static void main(String[] args) {
- String str = "<?xml version=/"1.0/" encoding=/"UTF-8/"?>" +
- "<orders>" +
- "<order>" +
- "<customer><no>LS-SM-AM-001</no><name>沃尔玛百货有限公司(武汉)</name></customer>" +
- "<products><product><name>天钻星Ⅱ挂机</name><type>KFR-26GW/DY-W(E1)</type><quantity>5</quantity></product></products>" +
- "<address><address-start>长沙市五一大道远达物流公司仓库</address-start><address-end>武汉市天马星路沃尔玛百货有限公司</address-end></address>" +
- "<date>2008-11-30</date>" +
- "</order>" +
- "<order>" +
- "<customer><no>LS-SM-AM-001</no><name>沃尔玛百货有限公司(武汉)</name></customer>" +
- "<products><product><name>天钻星Ⅱ挂机</name><type>KFR-26GW/DY-W(E1)</type><quantity>5</quantity></product></products>" +
- "<address><address-start>长沙市五一大道远达物流公司仓库</address-start><address-end>武汉市天马星路沃尔玛百货有限公司</address-end></address>" +
- "<date>2008-11-30</date>" +
- "</order>" +
- "</orders>";
- Document doc = null;
- try {
- doc = DocumentHelper.parseText(str);
- } catch (DocumentException ex) {
- ex.printStackTrace();
- }
- //指向根节点
- Element root = doc.getRootElement();
- List<Element> orders = root.elements("order");
- for (Element order : orders) {
- System.out.println(order.element("customer").elementText("no"));
- System.out.println(order.element("customer").elementText("name"));
- List<Element> products = order.element("products").elements("product");
- for (Element p : products) {
- System.out.println("----" + p.elementText("name"));
- System.out.println("----" + p.elementText("type"));
- System.out.println("----" + p.elementText("quantity"));
- }
- System.out.println(order.element("address").elementText("address-start"));
- System.out.println(order.element("address").elementText("address-end"));
- System.out.println(order.elementTextTrim("date"));
- System.out.println("");
- }
- }
- }