freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

第10章xmldom物件模型(留存版)

2025-12-03 16:46上一頁面

下一頁面
  

【正文】 } catch(SAXException se) { (“XML剖析 錯(cuò)誤 )。 使用 DTD驗(yàn)證 ? JAXP 從 API 版就開始支援 DTD 驗(yàn)證, 只需在 DocumentBuilderFactory 物件使用setValidating() 方法設(shè)定參數(shù)為 true,就可以驗(yàn)證 XML文件,如下所示: (true)。 ? SAXParserFactory類別:可以取得 SAXParser 實(shí)例來處理 SAX 事件基礎(chǔ)的 XML 剖析。 W3C DOM基礎(chǔ)的文件分析 ? 例如:一份 XML文件,如下所示: 01: library 02: book code=P679 03: titleJava 2程式設(shè)計(jì)範(fàn)例教本 /title 04: author陳會(huì)安 /author 05: price650/price 06: /book 07: /library XML的 DOM樹 ? 以 W3C DOM 的角度來看,前頁的 XML 文件就是一棵樹狀結(jié)構(gòu)的節(jié)點(diǎn)資料,以 Java 語言來說,就是一個(gè) Document 物件,如下圖所示: 什麼是 JAXP ? 之前已經(jīng)說過了,要處理 XML 文件,首先這份文件都必須先經(jīng)過 parser 來解析。 } catch(ParserConfigurationException pe) { ()。 DocumentBuilder db = ()。 try { DocumentBuilder db = ()。 case 4: return CDATA Section: + ()。 i++) ()。 ? NOTE: Text 也是 Node 的子類別。 ? insertBefore(newnode, befnode) : 將 newnode節(jié)點(diǎn)插在 befnode 節(jié)點(diǎn)前。 ? 如果保留原來的 namespace,把原來的名稱從 library 改成 books,如下所示: // 假設(shè)取得一個(gè) Element 節(jié)點(diǎn) element Element element = ()。 (node)。 NodeList nodes = ()。 i++ ) { (元素 : + (i).getNodeName())。 public class TestXSD { public static void main(String[] args) { if( != 1) { (Usage: java TestXSD )。 import 。 import .*。 Transformer tf = (new StreamSource(xsltFile))。 // 讀取 XML文件的內(nèi)容 while ( (strLine = ()) != null ) { (strLine+\n)。 } Ch10Print // HTML 的結(jié)果由螢?zāi)惠敵? public void buildHTML(String xmlData, String xsltFile) throws Exception { // 建立 TransformerFactory物件 TransformerFactory tff = ()。charset=Big5 titleHello Form/title /head body form method=post action= input type=text value=老呂 name=data input type=submit /form /body /html 第二個(gè) JSP % page language=java contentType=text/html。 i ()。 (DOM and JSP\n)。 (())。 child = () ) { //br/ 給 browser 用的, \n 給檢視原始碼用的 (b元素 :/b+()+br/\n)。 for (int i=0。 ? 將 改成如下頁的 並將它放於 d:\tomcat\webapps\xml ? 在瀏覽器內(nèi)執(zhí)行 ? JSP and DOM %page contentType=text/html pageEncoding=Big5 import=.*,.*,.*,.*,m.*,.* % %! String filename = 。 } } 作業(yè) ? 利用 JSP 來完成之前的 XML 以及 XLST 的轉(zhuǎn)換,但是結(jié)果是由網(wǎng)頁呈現(xiàn) ?後端的程式是以 JSP 開發(fā) ?伺服器可以由 Tomcat 來擔(dān)任 ?允許使用者選定 XML 和 XSLT 檔。 public class Ch10Print { public Ch10Print() {} // HTML 的結(jié)果由螢?zāi)惠敵? public void buildHTML(String xmlData, String xsltFile) throws Exception { // 建立 TransformerFactory物件 TransformerFactory tff = ()。 Ch10_6_2 app = new Ch10_6_2()。 i ()。 TestXPath import 。 // parse 錯(cuò)誤會(huì)引起 SAXException Document document = (xmlFile)。 ?JDK supports JAXP API ?JDK supports JAXP API ?JDK supports JAXP API TestXSD // 驗(yàn)證 XML Schema import .*。 (根元素 : +())。 (instock)。 // 新增子元素 code Element node = (code)。 ? 修改屬性 instock 內(nèi)容: Element element = ().getFirstChild()。 ? 如果觀念清楚的話,以下的說明也可以用來為某一已經(jīng)存在的 XML 文件新增節(jié)點(diǎn)。 ?程式碼在取得根節(jié)點(diǎn) root 物件後,使用getChildNodes() 方法取得下一層第 2 個(gè)節(jié)點(diǎn)的第 3個(gè)子節(jié)點(diǎn),對應(yīng) XML 元素就是第 2 個(gè) book 元素的第 3個(gè)子元素 price。 if(type == ) { pChild((i), pos+1)。// 剖析器設(shè)定錯(cuò)誤 } catch(IOException ie) { ()。 public class Ch10_3_1 { static Document document。 try { (true)。 DocumentBuilderFactory dbf = ()。 ?事件基礎(chǔ)的剖析器( Eventbased Parser): ? 讀取內(nèi)容時(shí)觸發(fā)一系列事件,應(yīng)用程式提供函數(shù)處理這些事件,以便存取 XML內(nèi)容,例如: SAX( Simple API for XML)。 ?程式碼匯入 XML 剖析器和 DOM 的相關(guān)套件,至於 .* 套件是剖析錯(cuò)誤處理的相關(guān)套件。 import .*。 import .*。 pChild(child, 0)。 i++) { int type = (i).getNodeType()。 i ()。 ? 我們先以建立新的 DOM 為例 ?建立新的 XML DOM 的語法如下: DocumentBuilder db = ()。 ? 如果想刪除屬性,則是使用 Element 元素物件的removeAttribute() 方法來刪除屬性,如下所示: // 取得一個(gè) Element 節(jié)點(diǎn) del (instock)。 // 建立新 XML文件 document = ()。 printXML(root)。 ( + +())。 } } 練習(xí)題 ? 請修改 Ch10_4_1 並使其能夠產(chǎn)生 的 XML 文件。 // 明確告知 JAXP 所使用的 Schema 語言 ( // Specify our own schema this overrides the schemaLocation in the xml file //( file:./)。 // 利用 XPathFactory 產(chǎn)生 XPath 處理器 XPath xpath = ()。 // 或者 // Object result = (“//book/title/text()”, // doc, )。 } Ch10_6_2 // 主程式 public static void main(String[] args) throws Exception { String htmlFile = 。 } Ch10Print import .*。 StringBuffer strBuffer = new StringBuffer()。 Worker w = new Worker(h)。 if ( ().equals() ) (WS+br/)。 Node child = (Node)()。}catch(ParserConfigurationException pce){ (errorfffff)。 DocumentBuilderFactory dbf=()。 ( 元素 : + (i).getNodeName()+br/)。 // 可以加上 (Standard Output)。 // 轉(zhuǎn)換 XML,若 XML 的資料來源是 Document 物件 (new DOMSource(document)), new StreamResult(new OutputStreamWriter()))。 import .*。 import .*。 // never fet this! DocumentBuilder builder = ()。 } public void warning(SAXParseException exception) { (warning: + ())。 try { TestXSD xmlTester = new TestXSD(xmlFile)。 for (int j = 0。 i++ ) { // 元素和文字節(jié)點(diǎn) (元素 : + (i).getNodeName())。 (newNode, ())。 import .*。 Text t = (Text) (P761)。 for (int j = 0。Document 物件還提供特殊的方法,能夠直接使用標(biāo)籤名稱取得所有為該名稱的節(jié)點(diǎn),如下所示: ? NodeList tagNodes
點(diǎn)擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1