⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 xmlparse.java

📁 java支持的短信平台
💻 JAVA
字号:
package com.khan.xml;


import java.io.*;
import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import org.w3c.dom.*;
import javax.xml.parsers.ParserConfigurationException;
import org.xml.sax.SAXException;
import java.util.HashMap;
import org.xml.sax.InputSource;

//import com.khan.datetime.*;


public class XMLParse {
  public HashMap provisionMap = new HashMap();

  public XMLParse() {
  }


  public static void main(String args[]) {

    XMLParse xmlp = new XMLParse();
    try {
      FileInputStream fin = new FileInputStream("D:/SyncOrderRelationReq.xml");
      xmlp.parseXml(fin);
    } catch (IOException e) {
      e.printStackTrace();
    }
    String TransactionID = (String) xmlp.provisionMap.get("TransactionID");
    System.out.println(TransactionID.trim());
  }


  public int parseXml(Object src) {
    String xml;
    if (src instanceof byte[]) {
      xml = new String((byte[]) src);
    } else {
      xml = src.toString();
    }

    DocumentBuilderFactory df = DocumentBuilderFactory.newInstance();
    DocumentBuilder doc = null;
    try {
      doc = df.newDocumentBuilder();
    } catch (ParserConfigurationException e) {
      System.err.println(e);
    }

    StringReader sr = new StringReader(xml);
    Document document = null;
    try {
      document = doc.parse(new InputSource(sr));
    } catch (DOMException dom) {
      System.err.println(dom);
    } catch (SAXException ioe) {
      System.err.println(ioe);
    } catch (IOException e) {
      System.err.println(e);
    }

    Element root = document.getDocumentElement();
    //System.out.println("-------------------------------------------------------");
    //System.out.println("now: "+ SMPTime.getNow());
    bianliNodes(root.getChildNodes()); //遍历XML
    //System.out.print(provisionMap.get("TransactionID"));
    return 0;
  }


  public int parseXml(InputStream inputstream) {
    /*inputstream*/

    DocumentBuilderFactory df = DocumentBuilderFactory.newInstance();
    DocumentBuilder doc = null;
    try {
      doc = df.newDocumentBuilder();
    } catch (ParserConfigurationException e) {
      System.err.println(e);
    }

    Document document = null;
    try {
      document = doc.parse(inputstream);
    } catch (DOMException dom) {
      System.err.println(dom);
    } catch (SAXException ioe) {
      System.err.println(ioe);
    } catch (IOException e) {
      System.err.println(e);
    }

    Element root = document.getDocumentElement();
    //System.out.println("-------------------------------------------------------");
    //System.out.println("now: "+ SMPTime.getNow());
    bianliNodes(root.getChildNodes()); //遍历XML
    //System.out.print(provisionMap.get("TransactionID"));
    return 0;
  }


  public void bianliNodes(NodeList nn) {
    int i = 0;
    while (i < nn.getLength()) {
      NodeList nl = nn.item(i).getChildNodes();
      if (nl.getLength() > 1) {
        bianliNodes(nl);
      } else if (nl.getLength() == 1) {
        //System.out.println((nn.item(i).getNodeName() + "  ").substring(0,16) +nn.item(i).getLastChild().getNodeValue());
        provisionMap.put(nn.item(i).getNodeName(), nn.item(i).getLastChild().getNodeValue());
      }
      i++;
    }
  }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -