亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

Java眼中的XML---文件讀取

難度初級
時長 3小時 0分
學習人數
綜合評分9.63
323人評價 查看評價
9.9 內容實用
9.5 簡潔易懂
9.5 邏輯清晰
  • 獲取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");
    查看全部
  • 1.xml(Extensible Markup Language)可擴展標記語言的主要作用: 1)主要是實習不同功能直接的連接(比如訂票與 支付) 2)不同系統之間的連接 3)數據共享 2.一種定義文檔格式的語言 語法結構: 1)declaration(聲明) <? ?> <? xml version="1.0" encoding="UTF-8"?> 2)Tag(標記)<></> <username> 內容</username> 3)Attribute(屬性) <username sex="male"></username> sex="male"即為屬性 也可以把屬性改為子元素 <username> 張三 <sex>male</sex> </username> 4)注釋 <!-- --> eg:<!--這是一個注釋的例子-->
    查看全部
    0 采集 收起 來源:初次邂逅 XML

    2018-03-22

  • 1.解析子節點,book標簽之間的所有內容都看成是子節點 NodeList childNodes=book.getChildNodes() 2.遍歷childNodes獲取每個節點的節點名和節點值 childNodes的getLength()方法返回節點的個數(空格與換行字符看成為一個文本節點,標簽與結束標簽看成一個元素節點) 3.通過NodeList的item()獲取子節點屬性 Node childnode=childNodes.item(i); 4.用Node類型的getNodeName()方法就可以獲取節點名 String name=childnode.getNodeName(); 通過Node類的getNodeType()來區分text類型的node以及elment類型的node if(childnode.getNodeType==Node.ELEMENT_NODE) {System.out.println(name)} 4.獲取了element類型節點的節點值 String value=childnode.getFirstChild().getNodeValue(); 或String value=childnode.getTextContent() 1.nodeValue的返回值為null,而且標簽之間的文本被看做是該標簽的子節點。因此用Node的getFirstChild()此時獲取的子節點屬性,再getNodeValue()獲取該值,或者用getTextContent()直接獲取節點值 2.getFirstChild()與getTextContent()區別 例如:<name><a>aa</a>老人與海</name>//該節點還存在其他子節點并且有節點值 則用getFirstChild().getNodeValue()時,返回:null,因為獲取的子節點仍然是element類型的; 用Node的getTextContent(),返回:aa老人與海
    查看全部
  • 常用的節點類型
    查看全部
  • 如果不知道節點的屬性個數以及屬性名,則采用for循環 若知道可以使用Element對象
    查看全部
  • DOM方式解析xml
    查看全部
  • 1.xml(Extensible Markup Language)可擴展標記語言的主要作用: 1)主要是實習不同功能直接的連接(比如訂票與 支付) 2)不同系統之間的連接 3)數據共享 2.一種定義文檔格式的語言 語法結構: 1)declaration(聲明) <? ?> <? xml version="1.0" encoding="UTF-8"?> 2)Tag(標記)<></> <username> 內容</username> 3)Attribute(屬性) <username sex="male"></username> sex="male"即為屬性 也可以把屬性改為子元素 <username> 張三 <sex>male</sex> </username> 4)注釋 <!-- --> eg:<!--這是一個注釋的例子-->
    查看全部
    0 采集 收起 來源:初次邂逅 XML

    2018-03-22

  • xml應用于不同平臺系統程序之間的信息交流
    查看全部
  • 1.xml(Extensible Markup Language)可擴展標記語言的主要作用: 1)主要是實習不同功能直接的連接(比如訂票與 支付) 2)不同系統之間的連接 3)數據共享 2.一種定義文檔格式的語言 語法結構: 1)declaration(聲明) <? ?> <? xml version="1.0" encoding="UTF-8"?> 2)Tag(標記)<></> <username> 內容</username> 3)Attribute(屬性) <username sex="male"></username> sex="male"即為屬性 也可以把屬性改為子元素 <username> 張三 <sex>male</sex> </username> 4)注釋 <!-- --> eg:<!--這是一個注釋的例子-->
    查看全部
    0 采集 收起 來源:初次邂逅 XML

    2018-03-22

  • JUnit是Java提供的一種進行單元測試的自動化工具。測試方法可以寫在任意類中的任意位置。使用JUnit可以沒有main()入口進行測試。 DOM4J在靈活性和對復雜xml的支持上都要強于DOM DOM4J的應用范圍非常的廣,例如在三大框架的Hibernate中是使用DOM4J的方式解析文件的。 DOM是w3c組織提供的一個官方解析方式,在一定程度上是有所應用的。 當XML文件比較大的時候,會發現DOM4J比較好用 1.JUnit:Java提供的單元測試;@Test注解;采用JUnit不需要程序入口main方法 2.性能測試結果:幾kB的xml文件;建議使用DOM4J解析 DOM-33ms SAX-6ms JDOM-69ms DOM4J-45ms 工程右鍵build path --Add library--JUnit單元測試 --version:JUnit4 DOM:33,SAX:6 JDOM:69;DOM4J:45 DOM 有可能溢出 多使用DOM4J
    查看全部
  • 基礎方法:DOM(平臺無關的官方解析方式)、SAX(基于事件驅動的解析方式) 擴展方法:JDOM、DOM4J(在基礎的方法上擴展出的,只有在java中能夠使用的解析方法) DOM:一次性將整個xml文件加載到內存中,形成DOM樹 優點:形成了樹結構,直觀好理解,代碼更容易編寫 解析過程中樹結構保留在內存中,方便修改 缺點:當xml文件較大時,對內存消耗比較大,容易影響解析性能并造成內存溢出 SAX:逐條語句判斷解析 優點:采用事件驅動模式,對內存消耗比較小 適用于只需要處理xml中數據時 缺點:不易編碼 很難同時訪問同一個xml中的多處不同數據 JDOM:僅使用具體類而不使用接口 API大量使用了Collections類 DOM4J:JDOM的一種智能分支,它合并了許多超出基本XML文檔表示的功能 DOM4J使用接口和抽象基本類方法,是一個優秀的Java XML API 具有性能優異、靈活性好、功能強大和極端易使用的特點 是一個開放源代碼的軟件
    查看全部
  • 解析子節點的信息 Iterator itt = book.elementIterator(); while(itt.hasNext()){ Element bookchild = (Element)itt.next(); bookchild.getName(); bookchild.getStringValue(); }
    查看全部
  • DOM4J 解析 xml 文件 1、創建一個 SAXReader 對象 SAXReader saxReader = new SAXReader(); 2、將 xml 文件加載到 SAXReader 中,并獲取 document 對象 Document document = saxReader.read(fileName); 3、通過 getRootElement() 獲取根節點元素 Element employeeRoot = document.getRootElement(); 4、通過 elementIterator() 獲取子節點元素,返回 Iterator 返回迭代器 Iterator eles = eleRoot.elementIterator(); 5、通過 while 遍歷迭代器 while(eles.hasNest()){ Element ele = (Element)eles.next();} 6、獲取屬性節點類似 JDOM 解析 List<Attribute> attrs = ele.attributes(); 7、獲取元素節點名、值 ele.getName() ele.getStringValue()/ele.getText() 8、獲取屬性節點名、值 ele.getName() ele.geValue()
    查看全部
  • JDOM使用過程中JAR包的引用 我們的項目中直接配置build path指定的jar包如果是在我們PC的硬盤某個路徑,那么在日后導出項目時候,項目中是沒有jar包的。 我們只能在我們的項目下建立一個lib文件夾將所需jar包復制進去,再進行build path的配置即可。
    查看全部
  • 在 JDOM 中存儲 Book 對象 private static ArrayList<Book> booksList = new ArrayList<Book>(); ... // 遍歷attrList(針對不清楚book節點下屬性的名字及數量) for (Attribute attr : attrList) { // 屬性名 String attrName = attr.getName(); // 屬性值 String attrValue = attr.getValue(); System.out.println("屬性名:" + attrName + "屬性值:" + attrValue); if (attrName.equals("id")) { bookEntity.setId(attrValue); } } // 對book節點的子節點的節點名及節點值的遍歷 List<Element> bookChilds = book.getChildren(); for (Element child : bookChilds) { System.out.println("節點名:" + child.getName() + "節點值:" + child.getValue()); if (child.getName().equals("name")) { bookEntity.setName(child.getValue()); } else if (child.getName().equals("author")) { bookEntity.setAuthor(child.getValue()); } ...//else if(){}與上面類似 booksList.add(bookEntity); bookEntity = null; syso.booksList.size(); syso.booksList.get(0).getId(); syso.booksList.get(0).getName(); ...
    查看全部

舉報

0/150
提交
取消
課程須知
本課程是 Java 的中級課程,需要各位小伙伴們熟悉 Java 面向對象的思想,并能熟練掌握 Java I/O 的相關知識。對如何將內容寫入 XML 文件感興趣的小伙伴們,可以進入《Java 眼中的 XML --- 文件寫入》一探究竟
老師告訴你能學到什么?
1、XML 的基本概念 2、XML 在實際項目開發中的的用途和優點 3、如何通過 Java 解析 XML

微信掃碼,參與3人拼團

微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號

友情提示:

您好,此課程屬于遷移課程,您已購買該課程,無需重復購買,感謝您對慕課網的支持!