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

📄 parsexml.java

📁 cnc网通小灵通网关接口源码
💻 JAVA
字号:
package cncgw.parser;/** * <p>Title: 小灵通网关</p> * <p>Description: </p> * <p>Copyright: Copyright (c) 2004</p> * <p>Company: yy</p> * @author lxf * @version 1.0 */import java.io.*;import org.jdom.*;import org.apache.log4j.*;import java.util.Iterator;import cncgw.cncMain;public class ParseXml {    public static String POSidentification="";//POS编号全局    public static Document xmlDoc;    public ParseXml() {    }    /**     *根据名称获得任意节点的值     *@param element string     *@return String     */    public static String getElement(String element)    {        String ResultString="";        ResultString = getSonElement(element);//获得第2层节点的值        if(ResultString.equals(""))        {            ResultString = getChildElement(element);//获得第3层节点的值            if(ResultString.equals(""))            {                ResultString = getChildSonElement(element);//获得第4层节点的值            }        }        return ResultString;    }    /**     *根据名称获得第1层节点的值     *@param element string     *@return String     */    public static String getRootElement(String element)    {        String ResultString="";        String  xmlRootElement = xmlDoc.getRootElement().getName();        Iterator xmlRoot = xmlDoc.getRootElement().getChildren().iterator();        if(xmlRootElement.equals(element))        {//第1层            ResultString = xmlDoc.getRootElement().getTextTrim();        }        return ResultString;    }    /**     *根据名称获得第2层节点的值     *@param element string     *@return String     */    public static String getSonElement(String element)    {        String ResultString="";        String  xmlRootElement = xmlDoc.getRootElement().getName();        Iterator xmlRoot = xmlDoc.getRootElement().getChildren().iterator();        while(xmlRoot.hasNext())        {            Element xmlSonElement = (Element)xmlRoot.next();            String xmlSonName = xmlSonElement.getName();            if(xmlSonName.equals(element))            {//第2层                ResultString = xmlSonElement.getTextTrim();                return ResultString;            }        }        return ResultString;    }    /**     *根据名称获得第3层节点的值     *@param element String     *@return String     */    public static String getChildElement(String element)    {        String ResultString="";        String  xmlRootElement = xmlDoc.getRootElement().getName();        Iterator xmlRoot = xmlDoc.getRootElement().getChildren().iterator();        while(xmlRoot.hasNext())        {            Element xmlSonElement = (Element)xmlRoot.next();            String xmlSonName = xmlSonElement.getName();//            Iterator xmlSonRoot = xmlSonElement.getChildren().iterator();            while(xmlSonRoot.hasNext())            {                Element xmlChildElement = (Element)xmlSonRoot.next();                String xmlChildName = xmlChildElement.getName();                if(xmlChildName.equals(element))                {//第3层                    ResultString = xmlChildElement.getTextTrim();                    return ResultString;                }            }        }        return ResultString;    }    /**     *根据名称获得第4层节点的值     *@param element String     *@return String     */    public static String getChildSonElement(String element)    {        String ResultString="";        String  xmlRootElement = xmlDoc.getRootElement().getName();        Iterator xmlRoot = xmlDoc.getRootElement().getChildren().iterator();        while(xmlRoot.hasNext())        {            Element xmlSonElement = (Element)xmlRoot.next();            String xmlSonName = xmlSonElement.getName();//            Iterator xmlSonRoot = xmlSonElement.getChildren().iterator();            while(xmlSonRoot.hasNext())            {                Element xmlChildElement = (Element)xmlSonRoot.next();                String xmlChildName = xmlChildElement.getName();                Iterator xmlChildRoot = xmlChildElement.getChildren().iterator();                while(xmlChildRoot.hasNext())                   {                       Element xmlChildSonElement = (Element) xmlChildRoot.next();                       String xmlChildSonName = xmlChildSonElement.getName();                       if(xmlChildSonName.equals(element))                       {//第4层                           ResultString = xmlChildSonElement.getTextTrim();                           return ResultString;                       }                    }            }        }        return ResultString;    }    /**     * 配置 根据名称获得第2层节点的值getElement(String element)     *@param strXML String 输入为 XML String     */    public static void xmlConfig(String strXML)            throws JDOMException,NullPointerException    {        try        {           org.jdom.input.SAXBuilder builder= new org.jdom.input.SAXBuilder();           builder.setValidation(false) ;           //           ByteArrayInputStream  b=new ByteArrayInputStream(strXML.getBytes());           InputStream  ins=(InputStream)b;           xmlDoc = builder.build(new InputStreamReader(ins));        }        catch(JDOMException e)        {            cncMain.errorlog("[错误]-解析交易接收的XML串发生错误:"+e);            throw e;        }        catch(NullPointerException e)        {            cncMain.errorlog("[错误]-解析交易接收的XML串发生错误:"+e);            throw e;        }    }    public static void xmlFileConfig(String FileName)    {        try        {            org.jdom.input.SAXBuilder builder= new org.jdom.input.SAXBuilder();            builder.setValidation(false) ;            org.jdom.Document myDoc = builder.build(new InputStreamReader((InputStream)new FileInputStream(FileName)));            java.util.Iterator it = myDoc.getRootElement().getChildren().iterator() ;        }        catch(JDOMException e)        {            cncMain.errorlog("[错误]-解析XML文件发生错误:"+e ) ;            e.printStackTrace();        }        catch(Exception e)        {            cncMain.errorlog("[错误]-解析XML文件发生错误:"+e ) ;            e.printStackTrace();        }    }}

⌨️ 快捷键说明

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