-
為什么使用XML文件? 不同系統間通信、不同軟件間通信、不同平臺間通信使用xml文件 XML文件用來存儲數據和傳輸數據 XML存儲結構為樹狀 xml聲明:<?xml version="1.0"encoding="utf-8"? > XML作用: 不同應用程序之間通信、傳輸信息(訂票程序和支付程序) 不同系統間的通信(例:Windows系統和IOS系統) 不同平臺間的數據共享(手機端和PC端) 不同APP之間的通信,不同的平臺間的通信,不同平臺間的數據共享。XML文件主要用于存儲以及傳輸信息。 通過xml文件存儲小型數據。查看全部
-
解析xml元素:<br> 1. 重寫DefalutHandler的實現類對象的startElement()方法<br> 2. 在startElement()方法中,先調用DefaultHanlder 的startElement()方法<br> 3. 已知節點的屬性名的情況下<br> if(qname.equals("book")){<br> String value = attributes.getValue("id");<br> }<br> 4.不知節點的屬性名的情況下<br> 獲取屬性長度<br> int length=attributes.getLength();<br> 獲取屬性名和屬性值 for(int i=0;i<length;i++){ System.out.print(attributes.getQname(index)+attributes.getValue(index)); }查看全部
-
通過SEX方法解析xml文件的步驟: 第一步,獲取一個SAXParserFactory對象 SAXParserFactory factory = SAXParserFactory.newInstance(); 第二步,獲取一個SAXParser對象 SAXParser parser = factory.newSAXParser(); 第三步,創建一個類SAXParserHandler implements DefaultHandler; 第四步,在類中重寫startElement()和endElement()方法. 在類中重寫startDocument()方法和endDocument()方法. 第五步,創建SAXParserHandler對象 SAXParserHandler handler = new SAXParserHandler() 第六步,調用parse(url,handler實例)方法 parser.parse("book.xml",handler);查看全部
-
ChildNodes.item(i).getFirstChild().getNOdeValue()和 ChildNodes.item(i).getTextContent()的區別 子節點中還包含其他子節點時,后者可以把子節點的值都顯示出來。 getTextContent()獲取節點中的text內容(即節點值). getNodeType().............有text------3,element------2,attr-----1 而Element如果要獲取值,必須讀取它的子節點,<name>content</name>認為content是name的子節點; 兩種方法: getFirstChild().getNodeName();(獲取子節點再獲取值) getTextContent();(獲取content方法)查看全部
-
xml中,空格和換行符算作了Text節點查看全部
-
主要學習DOM和DOM4J解析查看全部
-
使用Dom解析xml文件的屬性節點。 在不知道節點屬性的個數和屬性名時: 1、通過document.getElementByTagName("標簽名")獲得所有標簽名的節點,得到一個NodeList集合 2、通過NodeList.getLength()獲得集合長度,遍歷集合 3、Node node = NodeList.item(index)獲得里面的節點 4、通過NamedNodeMap attrs = node.getAttributes()獲取所有屬性集合 5、通過attrs.getLength()遍歷集合,Node attr = atrrs.item(index) 6、attr.getNodeName()獲得屬性名,attr.getNodeValue()獲取屬性值 前提已經知道book節點有且只有1個id屬性,將book節點進行強制類型轉換,轉換成element類型。 1、通過document.getElementByTagName("標簽名")獲得所有標簽名的節點,得到一個NodeList集合 2、通過NodeList.getLength()獲得集合長度,遍歷集合 3、element book=(element)bookList.item(i);//強制轉換為element類型 4、string attrValue = book.getAttribute("id");查看全部
-
獲取xml文件內容的 四種解析方式:DOM SAX DOM4J JDOM DOM、SAX :java 官方方式,不需要下載jar包 DOM4J、JDOM :第三方,需要網上下載jar包 DOM使用步驟: 準備工作 1、創建一個DocumentBuilderFactory的對象 DocumentBuilderFactory dbf = DocumnetBuilderFactory.instance(); 2、創建一個DocumentBuilder的對象 DocumentBuilder db = dbf.newDocumentBuilder(); 3、通過DocumentBuilder對象的parse方法加載xml文件到當前項目 Document document = db.parse("*.xml");查看全部
-
常用結點類型查看全部
-
基礎方法:DOM(平臺無關的官方解析方式)、SAX(基于事件驅動的解析方式) 擴展方法:JDOM、DOM4J(在基礎的方法上擴展出的,只有在java中能夠使用的解析方法) DOM:一次性將整個xml文件加載到內存中,形成DOM樹 優點:形成了樹結構,直觀好理解,代碼更容易編寫 解析過程中樹結構保留在內存中,方便修改 缺點:當xml文件較大時,對內存消耗比較大,容易影響解析性能并造成內存溢出 SAX:逐條語句判斷解析 優點:采用事件驅動模式,對內存消耗比較小 適用于只需要處理xml中數據時 缺點:不易編碼 很難同時訪問同一個xml中的多處不同數據 JDOM:僅使用具體類而不使用接口 API大量使用了Collections類 DOM4J:JDOM的一種智能分支,它合并了許多超出基本XML文檔表示的功能 DOM4J使用接口和抽象基本類方法,是一個優秀的Java XML API 具有性能優異、靈活性好、功能強大和極端易使用的特點 是一個開放源代碼的軟件查看全部
-
JDOM處理亂碼的情況查看全部
-
<?xml version="1.0" encoding="UTF-8"?>查看全部
-
XML是一棵倒著的樹查看全部
-
xml查看全部
-
JDOM解析文件 導入jar包 1.創建一個SAXBuilder對象 SAXBuilder saxbuilder=newSAXBuilder(); 2.創建輸入流,將xml文件加載到輸入流中(拋出FileNotFoundException) Inputstream in=new FileInputstream("xxx.xml"); 3.通過SAXBuilder的Build方法將輸入流加載到saxb中獲取dom對象 Document doc = saxbuilder.build(in); 4.通過document對象獲取xml文件的根結點 Element rootElement =doc.getRootElement(); 5.獲取根結點下的子節點的List集合查看全部
舉報
0/150
提交
取消