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

📄 ipinfoxmlbuilder.java~69~

📁 用JAVA编写的TsinghuaIP功能的源代码
💻 JAVA~69~
字号:
package tsinghuaip;

import org.xml.*;
import org.w3c.dom.*;
import java.io.*;
import java.util.*;
import javax.xml.parsers.*;
import javax.xml.transform.sax.*;
import javax.xml.transform.dom.*;
import javax.xml.transform.*;
import javax.xml.transform.stream.StreamResult;


public class IPInfoXMLBuilder {
    private String strTxtFileName;   //the text file name
    private String strXmlFileName;   //the XML file name

    private String indent=" ";
    private String end="\r";
    private String header="<?xml version=\"1.0\" ?>";
    private Document documnet;
    private Element element;

    private DocumentBuilderFactory docBuilderFactory;
    private DocumentBuilder docBuilder;
    private Document doc;
    private Element root;

    public IPInfoXMLBuilder(){
        strTxtFileName = new String();
        strXmlFileName = new String();

        try{
            docBuilderFactory = DocumentBuilderFactory.newInstance();
            docBuilder = docBuilderFactory.newDocumentBuilder();
            doc = docBuilder.newDocument();
            doc.normalize();
            root = doc.createElement("IPADDRESS");
        }
        catch(Exception e){
            e.printStackTrace();
        }

    }

    public void TxtToXML(String strTxt, String strXml){
        strTxtFileName = strTxt;
        strXmlFileName = strXml;

        String strSeparator = "|";  //the separator of the text file field
        String strTmp = "";

        try{
            BufferedReader inTxt = new BufferedReader(new FileReader(strTxtFileName));
            BufferedWriter outXml = new BufferedWriter(new FileWriter(strXmlFileName));

            outXml.write("<?xml version= \"1.0\" encoding=\"ISO-8859-1\"?>");
            outXml.newLine();
            outXml.write("<IPADDRESS>");

            while((strTmp = inTxt.readLine()) != null){
                StringTokenizer strToken = new StringTokenizer(strTmp, "|");

                String arrTmp[];
                arrTmp = new String[3];
                for (int i = 0; i < 3; i++)
                    arrTmp[i] = new String("");

                int index = 0;
                outXml.newLine();
                outXml.write("    <IPPHASE>");

                while(strToken.hasMoreElements()){
                    strTmp = (String)strToken.nextElement();
                    strTmp = strTmp.trim();
                    arrTmp[index++] = strTmp;
                }
                Element nodeIPPhase = doc.createElement("IPPHASE");
                Element nodeStartIP = doc.createElement("STARTIP");
                Element nodeEndIP = doc.createElement("ENDIP");
                Element nodeLocal = doc.createElement("LOCAL");

                nodeStartIP.setNodeValue(arrTmp[0]);
                nodeEndIP.setNodeValue(arrTmp[1]);
                nodeLocal.setNodeValue(arrTmp[2]);


                nodeIPPhase.appendChild(nodeStartIP);
                nodeIPPhase.appendChild(nodeEndIP);
                nodeIPPhase.appendChild(nodeLocal);

                root.appendChild(nodeIPPhase);

                outXml.newLine();
                outXml.write("        <STARTIP>" + arrTmp[0] + "</STARTIP>");
                outXml.newLine();
                outXml.write("        <ENDIP>" + arrTmp[1] + "</ENDIP>");
                outXml.newLine();
                outXml.write("        <LOCAL>" + arrTmp[2] + "</LOCAL>");

                outXml.newLine();
                outXml.write("    </IPPHASE>");

            }

            outXml.newLine();
            outXml.write("</IPADDRESS>");
            outXml.flush();


            doc.appendChild(root);

            Source source = new DOMSource(doc);
            File file = new File("DOMXML.xml");
            Result result = new StreamResult(file);
            Transformer xformer = TransformerFactory.newInstance().newTransformer();
            xformer.transform(source, result);

        }
        catch(Exception e){
            e.printStackTrace();
        }
    }

    public static void main(String[] args) {
    }
}

⌨️ 快捷键说明

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