XML入門的常見問題(四)
在 xml 物件模型中如何處理空白字元?
有些時候,XML 物件模型會顯示包含空白字元的 TEXT 節點。空白字符被截斷後,多半會帶來一些混亂。例如下面的XML 範例:
]>
Smith
John
+.
ELEMENT: person TEXT:
ELEMENT: lastname
TEXT:
ELEMENT: firstname
TEXT:
名字和姓氏兩邊是只包含空白字元的TEXT 節點,因為「person」元素的內容模型是MIXED;它包含#PCDATA 關鍵字。 MIXED 內容模型指定元素之間可以有文字存在。因此,以下的內容也是正確的:
My last name is Smith and my first name is
John
〜〜〜『 last name is
ELEMENT : lastname
ELEMENT: firstname
TEXT:
+ 。因此,對於 MIXED 內容模型來說,文字組合、空白字元和元素都是相關的。對於非 MIXED 內容模型來說則不是這樣。
要使只有空白字元的TEXT 節點消失,請從「person」元素聲明中刪除#PCDATA 關鍵字:
結果是下面清晰的樹:
ELEMENT: lastname
ELEMENT: firstname
XML 聲明要做什麼?
XML 聲明必須列在 XML 文件的頂部:
它指定下面的項目:
該文件是 XML 文件。在遺失或尚未指定 MIME 類型時 MIME 偵測器可以用它來偵測檔案是否為類型 text/xml。
文件符合 XML 1.0 規格。在以後 XML 有其他版本時這一點很重要。
文件字元編碼。編碼屬性是可選的,預設為 UTF-8。
注意:XML 宣告必須在 XML 文件的第一行,因此下面的 XML 檔案:
產生下面的分析錯誤:
無效的 xml 宣告。
行 0000002:位置 0000007: ------^
注意:XML 聲明是可選的。如果需要在頂部指定註解或處理指令,那麼請不要放入 XML 聲明。但是,預設的編碼將為 UTF-8。
如何以可讀格式列印我的 XML 文件?
在用 DOM 從零開始構造文檔以產生 XML 文件時,任何內容都在一行上,相互之間沒有空格。這是預設的行為。
建構在 Internet Explorer 5 中的預設 XSL 樣式表,以可讀格式顯示和列印 XML 文件。例如,如果已經安裝了 IE5,請嘗試查看 nospace.xml 檔案。瀏覽器中應該顯示下面的樹:
-
-
XYZ
12.56
這最好不輸出為:
E
lephant
E
lephant
名稱空間類型必須為 #FIXED。屬性的名稱空間也是這樣:
名稱空間和 XML 架構
DTD 和 XML 架構不能混合。例如,下面的
xmlns:x CDATA #FIXED "x-schema:myschema.xml"
將不會導致使用在 myschema.xml 中定義的架構定義。對 DTD 和 XML 架構的使用是互斥的。 如何在 Visual Basic 中使用 XMLDSO?
使用下面的 XML 作為範例:
Mark Hanson
Jane0114185 5
用下面的程式碼將 XML 資料載入到 XML DSO 控制項:
Dim dso As New XMLDSOControl
Dim doc As IXMLDOMDocument
Set doc = dso.XMLDocument
幫助D. ter 的新記錄集物件中:
Set da.Object = dso
Dim rs As New ADODB.Recordset
rs. MsgBox rs.Fields("name"). Value
結果顯示字串「Mark Hanson」
必須已經安裝 MSXML.DLL 的 IE5 版本。在 Visual J++ 6.0 中,從專案選單中選擇新增 COM 包裝程序,然後從 COM 物件清單中選擇「Microsoft XML 1.0」。該操作將把所需的 Java 包裝程式建構到稱為「msxml」的新軟體包中。這些預先建構的 Java 包裝程式也可以下載。類別可以依下列方法使用:
import com.ms.com.*;
public class Class1 總 〕〜》》 >
DOMDocument doc = new DOMDocument ();
System.out.println("Loaded " + doc.getDocumentElement().getNodeName());
} }
程式碼範例將從sun religion 範例載入3.8MB 測試檔案「ot.xml」。 Variant 類別用於包裝 Win32 VARIANT 基本類型。
因為在每次檢索節點時實際上都獲得了新的包裝程序,因此不能在節點上使用指標比較。因此,不要使用下面的程式碼,
IXMLDOMNode root1 = doc.getDocumentElement();
IXMLDOMNode root2 = doc.getDocumentElement();而要使用下面的代碼:
if (ComLib.isEqualUnknown(root1, root2)) ....
.class 包裝程式的總大小約為160KB。但是,為了與 W3C 規範完全符合,應該只使用 IXMLDOM* 包裝程式。下面的類別是舊的IE 4.0 XML 接口,可以從msxml 資料夾中刪除它們:
IXMLAttribute*,
IXMLDocument*, XMLDocument*,ſ
IXMLDocument*, XMLDocument*〠
tagXMLEMEM_TYPE*
_xml_error*
這使大小減少為147KB。同時也可以刪除下面的項目:
在 Java 應用程式中從多個執行緒存取 XML 文件。
xmlhttpRequest 用 XML DAV HTTP 擴充與伺服器通訊。
IXTLRuntime
定義 XSL 樣式表腳本物件。
XMLDSOControl
綁定到 HTML 頁面中的 XML 資料。
XMLDOMDocumentEvents
在分析過程中返回回呼。
DOMDocument, IXMLDOMDocument
IXMLDOMor* 送IX。〠!*@*** IXMLDOMDocumentFragment*
IXMLDOMImplementation
IXMLDOMParseError
和使用者可能需要保留的DTD 資訊:
IXMLDOMDocumentType
IXMLDOMEntity
IXMLDOMAttribute
IXMLDOMCDS.
IXMLDOMElement
IXMLDOMProcessingInstruction
IXMLDOMEntityReference
IXMLDOMText捲髮使大小減少到61KB。但是,對 IXMLDOMElement 來說,getAttribute 和 setAttribute 方法都是有用的。否則需要使用:
以上就是XML入門的常見問題(四)的內容,更多相關內容請關注PHP中文網(www.php.cn) !

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

XML檔可以用PPT開啟嗎? XML,即可擴展標記語言(ExtensibleMarkupLanguage),是一種廣泛應用於資料交換和資料儲存的通用標記語言。與HTML相比,XML更加靈活,能夠定義自己的標籤和資料結構,使得資料的儲存和交換更加方便和統一。而PPT,即PowerPoint,是微軟公司開發的一種用於創建簡報的軟體。它提供了圖文並茂的方

使用Python實現XML資料的合併和去重XML(eXtensibleMarkupLanguage)是一種用於儲存和傳輸資料的標記語言。在處理XML資料時,有時候我們需要將多個XML檔案合併成一個,或移除重複的資料。本文將介紹如何使用Python實現XML資料的合併和去重的方法,並給出對應的程式碼範例。一、XML資料合併當我們有多個XML文件,需要將其合

Python中的XML資料轉換為CSV格式XML(ExtensibleMarkupLanguage)是一種可擴充標記語言,常用於資料的儲存與傳輸。而CSV(CommaSeparatedValues)則是一種以逗號分隔的文字檔案格式,常用於資料的匯入和匯出。在處理資料時,有時需要將XML資料轉換為CSV格式以便於分析和處理。 Python作為一種功能強大

使用Python實現XML資料的篩選和排序引言:XML是一種常用的資料交換格式,它以標籤和屬性的形式儲存資料。在處理XML資料時,我們經常需要對資料進行篩選和排序。 Python提供了許多有用的工具和函式庫來處理XML數據,本文將介紹如何使用Python實現XML資料的篩選和排序。讀取XML檔案在開始之前,我們需要先讀取XML檔案。 Python有許多XML處理函式庫,

使用Python處理XML中的錯誤和異常XML是一種常用的資料格式,用於儲存和表示結構化的資料。當我們使用Python處理XML時,有時可能會遇到一些錯誤和異常。在本篇文章中,我將介紹如何使用Python來處理XML中的錯誤和異常,並提供一些範例程式碼供參考。使用try-except語句捕捉XML解析錯誤當我們使用Python解析XML時,有時候可能會遇到一些

Python實作XML與JSON之間的轉換導語:在日常的開發過程中,我們常常需要將資料在不同的格式之間轉換。 XML和JSON是常見的資料交換格式,在Python中,我們可以使用各種函式庫來實作XML和JSON之間的相互轉換。本文將介紹幾種常用的方法,並附帶程式碼範例。一、XML轉JSON在Python中,我們可以使用xml.etree.ElementTree模

Python解析XML中的特殊字元和轉義序列XML(eXtensibleMarkupLanguage)是一種常用的資料交換格式,用於在不同系統之間傳輸和儲存資料。在處理XML檔案時,經常會遇到包含特殊字元和轉義序列的情況,這可能會導致解析錯誤或誤解資料。因此,在使用Python解析XML檔案時,我們需要了解如何處理這些特殊字元和轉義序列。一、特殊字元和

使用Python實現XML與資料庫之間的資料同步導言:在實際的開發過程中,常常需要將XML資料與資料庫資料同步。 XML是一種常用的資料交換格式,而資料庫則是儲存資料的重要工具。本文將介紹如何使用Python實現XML和資料庫之間的資料同步,並給出程式碼範例。一、XML和資料庫的基本概念XML(ExtensibleMarkupLanguage)是一種可擴
