- 
            
            四种解析 dom解析查看全部
- 
            
            DOM解析xml文件的准备工作 拖拽要解析的xml文件到项目中,选择copy files,因为link to files会导致导出该项目后找不到xml文件 查看全部
- 
            
            xml用于存储和传输信息,比如不同平台(app和网页版),不同系统,不同程序间(订票和支付) xml是树形结构 查看全部
- 
            
            DOM优点  查看全部 查看全部
- 
            
            SAX优点  查看全部 查看全部
- 
            
            JDOM和DOM4J  查看全部 查看全部
- 
            
            DOM4J方式解析 SAXReader reader = new SAXReader(); Document document = reader.read(重载); 该解析方式可以使用迭代器获取子节点 Iterator it = BookSrore.elementIterator(); 查看全部
- 
            
            <?xml version="1.0" encoding="UTF-8" xml?> 其中encoding指定了解析时默认的编码方式。JDOM也可以用如下方式指定解析时采取的编码方式 new InputStreamReader(in,"UTF-8") 查看全部
- 
            
            JDOM方式解析 SAXBuilder saxBuilder = new SAXBuilder(); InputStream in = new FileInputStream("bool.xml"); Document document = saxBuilder.build(in);查看全部
- 
            
            SAX解析: SAXParserFactory factory = SAXParserFactory.newInstance(); SAXParser parser = factory.newSAXParser(); //该类是继承了DefaultHandler的自定义类,通过重写其中的方法,实现整个解析过程要执行的操作 SAXParserHandler handler = new SAXParserHandler(); parser.parse("book.xml",handler);查看全部
- 
            
            获取节点内的text内容,可以先获取该Text节点,然后getNodeValue(); 或者使用getTextContent() ---返回该节点下的所有text内容(不包含标签) 查看全部
- 
            
            四种解析方式:DOM、SAX、DOM4J、JDOM //DOM使用 DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance(); DocumentBuilder db = dbf.newDocumentBuilder(); Document document = db.parse("bool.xml");查看全部
- 
            
            import java.io.IOException; import javax.xml.parsers.DocumentBuilder; import javax.xml.parsers.DocumentBuilderFactory; import javax.xml.parsers.ParserConfigurationException; import org.w3c.dom.Document; import org.w3c.dom.NamedNodeMap; import org.w3c.dom.Node; import org.w3c.dom.NodeList; import org.xml.sax.SAXException; public class bookparse { public static void main(String[] args) { DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance(); try { DocumentBuilder db = dbf.newDocumentBuilder(); Document document = db.parse("src/lib/book.xml"); NodeList booklist = document.getElementsByTagName("book"); for (int i = 0; i < booklist.getLength(); i++) { Node node = booklist.item(i); NamedNodeMap nnms = node.getAttributes(); System.out.println("第" + (i + 1) + "本书:"); for (int j = 0; j < nnms.getLength(); j++) { NodeList bookchild = node.getChildNodes(); for (int k = 0; k < bookchild.getLength(); k++) { Node bookvalue = bookchild.item(k); if (bookvalue.getNodeType() == Node.ELEMENT_NODE) { System.out.print(bookvalue.getNodeName() + ":"); System.out.println(bookvalue.getTextContent()); } } } System.out.println(""); } } catch (SAXException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (ParserConfigurationException e) { // TODO Auto-generated catch block e.printStackTrace(); } } } 查看全部
- 
            
            JDOM和DOMJ(DOM4J基于JDOM,性能上更好一些) 查看全部
- 
            
            SAX方式的优缺点(按顺利一步一步往下读取) 查看全部
举报
 
             
         
                 
                 
                 
                 
                