xml文檔的解析有兩種方式: 一是DOM解析,一是SAX我們用的是dom4j的解析包,其對DOM和SAX都支持解析.
java自帶以下是DOM解析.
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(); factory.setValidating(false); DocumentBuilder builder = factory.newDocumentBuilder(); Document doc = builder.parse("src/students.xml");DOM4J獲取Document對象:SAXReader reader = new SAXReader(); Document doc = reader.read("src/students.xml");.............................................................................................................................
java自帶SAX的解析:
SAXParserFactory factory =SAXParserFactory.newInstance();
SAXParser parser = factory.newSAXParser();
parser.parse("src/students.xml",new DefaultHandler()); DefaultHandler-->需要創建實現這個DefaultHandler接口的實現類Dom4j通過SAX獲得document對象:
SAXReader reader = new SAXReader();
Document doc = reader.read(input); input------>讀取xml文件的內容
..............................................................................................................................................................................
回顯或寫入xml內容
OutputFormat format = OutputFormat.createPRettyPrint();//設置輸出編碼format.setEncoding("UTF-8");//創建需要寫入的File對象File file =newFile("D:"+ File.separator +"books.xml");//生成XMLWriter對象,構造函數中的參數為需要輸出的文件流和格式XMLWriter writer =newXMLWriter(newFileOutputStream(file), format);//開始寫入,write方法中包含上面創建的Document對象writer.write(doc);..............................................................................................................................................................................
另外, dom4j支持xpath的(查詢)操作.
dom4j的下載地址為: https://sourceforge.net/projects/dom4j/files/dom4j/
新聞熱點
疑難解答