亚洲精品中文字幕无乱码_久久亚洲精品无码AV大片_最新国产免费Av网址_国产精品3级片

IBM認(rèn)證

XML認(rèn)證知識點(diǎn):DOM Parser

時(shí)間:2024-10-21 09:03:34 IBM認(rèn)證 我要投稿
  • 相關(guān)推薦

XML認(rèn)證知識點(diǎn):DOM Parser

  DOM Document 是以層次結(jié)構(gòu)組織起來的節(jié)點(diǎn),或信息片段的集合。這種層次結(jié)構(gòu)允許開發(fā)者瀏覽樹來查找特定信息。通常,分析結(jié)構(gòu)需要在完成任何工作之前裝入整個(gè)文檔并且裝入層次結(jié)構(gòu)。

XML認(rèn)證知識點(diǎn):DOM Parser

  基本的應(yīng)用程序

  從創(chuàng)建基本的應(yīng)用程序,名為 OrderProcessor 的類開始。

  import javax.xml.parsers.DocumentBuilder;

  import javax.xml.parsers.DocumentBuilderFactory;

  import java.io.File;

  import org.w3c.dom.Document;

  public class OrderProcessor {

  public static void main (String args[]) {

  File docFile = new File("orders.xml");

  Document doc = null;

  try {

  DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();

  DocumentBuilder db = dbf.newDocumentBuilder();

  doc = db.parse(docFile);

  } catch (Exception e) {

  System.out.print("Problem parsing the file.");

  }

  }

  }

  首先,Java 導(dǎo)入必要的類,然后創(chuàng)建 OrderProcessor 應(yīng)用程序。在本教程中的這個(gè)示例將只處理一個(gè)文件,所以為簡短起見,該應(yīng)用程序包含對它的直接引用。

  應(yīng)用程序在 try-catch 塊外部定義了 Document 對象,以便在后面使用該對象。try-catch 使您能執(zhí)行可能會(huì)拋出異常的一些操作,這樣不會(huì)危及整個(gè)應(yīng)用程序。如果異常拋出,則應(yīng)用程序簡單地執(zhí)行相應(yīng)的 catch 代碼。

  在 try-catch 塊內(nèi)部,應(yīng)用程序創(chuàng)建 DocumentBuilderFactory,然后使用它來創(chuàng)建 DocumentBuilder。最后,DocumentBuilder 解析該文件以創(chuàng)建 Document。

  編輯文檔

  更改節(jié)點(diǎn)數(shù)據(jù)

  Node.setNodeValue(elemValue);

  添加節(jié)點(diǎn)

  String totalString = new Double(total).toString();

  Node totalNode = doc.createTextNode(totalString);

  //Document 對象創(chuàng)建新的文本節(jié)點(diǎn),該節(jié)點(diǎn)帶有作為值的 totalString

  Element totalElement = doc.createElement("total");

  //創(chuàng)建新元素 total

  totalElement.appendChild(totalNode);

  // 將節(jié)點(diǎn)添加到新的 total 元素。

  thisOrder.insertBefore(totalElement, thisOrder.getFirstChild());

  //將新元素添加到 Document,指定新的 Node,然后指定新 Node 在 Node 之前

  除去節(jié)點(diǎn)

  Node deadNode = thisOrderItem.getParentNode().removeChild(thisOrderItem);

  替換節(jié)點(diǎn)

  Element backElement = doc.createElement("backordered");

  //創(chuàng)建新元素 backordered

  Node deadNode = thisOrderItem.getParentNode().replaceChild(backElement,thisOrderItem);

  創(chuàng)建和設(shè)置屬性

  Element backElement = doc.createElement("backordered");

  //創(chuàng)建新元素 backordered

  backElement.setAttributeNode(doc.createAttribute("itemid"));

  //創(chuàng)建新屬性 itemid

  String itemIdString = thisOrderItem.getAttributeNode("itemid").getNodeValue();

  //取得thisOrderItem的屬性itemid的值

  backElement.setAttribute("itemid", itemIdString);

  //設(shè)置backElement的屬性item的值,可以省略createAttribute

  Node deadNode = thisOrderItem.getParentNode().replaceChild(backElement,thisOrderItem);

  除去屬性

  Element thisOrder = (Element)orders.item(orderNum);

  Element customer = (Element)thisOrder.getElementsByTagName("cusomertid").item(0);

  customer.removeAttribute("limit");

  //去除屬性limit

【XML認(rèn)證知識點(diǎn):DOM Parser】相關(guān)文章:

XML認(rèn)證教程:DOM Parser09-10

XML認(rèn)證知識點(diǎn):SAX Parser08-31

XML認(rèn)證考試知識點(diǎn):Parser05-11

XML認(rèn)證教程:SAX Parser08-01

XML認(rèn)證知識點(diǎn):XML Schema09-28

XML認(rèn)證知識點(diǎn):名稱空間10-24

IBM認(rèn)證:XML入門XML簡介06-08

IBM XML認(rèn)證知識點(diǎn):解析器09-20

XML認(rèn)證教程:XPATH09-17

XML認(rèn)證教程:Dtd09-03