ILSParser 介面
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
能夠從各種輸入來源建置或增強 DOM 樹狀結構的 物件介面。
[Android.Runtime.Register("org/w3c/dom/ls/LSParser", "", "Org.W3c.Dom.LS.ILSParserInvoker")]
public interface ILSParser : Android.Runtime.IJavaObject, IDisposable, Java.Interop.IJavaPeerable
[<Android.Runtime.Register("org/w3c/dom/ls/LSParser", "", "Org.W3c.Dom.LS.ILSParserInvoker")>]
type ILSParser = interface
interface IJavaObject
interface IDisposable
interface IJavaPeerable
- 屬性
- 實作
備註
能夠從各種輸入來源建置或增強 DOM 樹狀結構的 物件介面。
LSParser
提供 API 來剖析 XML 並建置對應的 DOM 文件結構。 LSParser
叫用 DOMImplementationLS.createLSParser()
方法即可取得 實例。
如 [DOM Level 3 Core] 中所指定,當檔第一次透過 LSParser 提供時: <ul><li> 永遠不會有兩個相鄰的節點類型為 NODE_TEXT,而且永遠不會有空的文字節點。 </li li><> 預期value
節點的 Attr
和 nodeValue
屬性一開始會傳回 XML 1.0 正規化值。 不過,如果參數 「 validate-if-schema」 和 「 datatype-normalization」 設定為 true
,則根據所使用的屬性正規化,屬性值可能會與 XML 1.0 屬性正規化取得的參數不同。 如果參數 「datatype-normalization」 設定為 false
,則保證會發生 XML 1.0 屬性正規化,而且如果屬性清單不包含命名空間宣告,Element
attributes
則節點上的屬性代表 [XML 資訊集] 中定義的屬性 <b>[attributes]</b>。 </li></ul>
異步 LSParser
對象應該也會實 events::EventTarget
作 介面,以便事件接聽程式可以在異步 LSParser
對象上註冊。
異步LSParser
物件支援的事件包括:<dl<>dt>load</dt><dd> 完成LSParser
以載入檔。 另請參閱 介面的定義 LSLoadEvent
。 </dd dt progress/dt<>dd> 訊LSParser
號會隨著數據剖析而進行。<>>< 此規格不會嘗試確切定義何時應該分派進度事件。 這刻意保留為相依實作。 以下是應用程式如何分派進度事件的範例:剖析器開始接收數據後,會分派進度事件以指出剖析開始。 從該處,會針對每 4096 個接收和處理的數據分派進度事件。 不過,這隻是一個範例,實作可以選擇在剖析時隨時分派進度事件,或完全不分派進度事件。 另請參閱 介面的定義 LSProgressEvent
。 </dd/dl p b>注意:</b> 此規格中定義的所有事件都會使用命名空間 URI 。<>"http://www.w3.org/2002/DOMLS"
><><
剖析輸入來源時,錯誤會透過錯誤處理程式向應用程式報告(LSParser.domConfig
「 錯誤處理程式」參數)。 此規格絕不會嘗試定義剖析 XML 或任何其他標記時可能發生的所有可能錯誤,但已定義一些常見的錯誤案例。 此規格所定義的錯誤和警告類型DOMError.type
為: <dl><dt>"check-character-normalization-failure" [error]
</dt><dd> 如果參數 “ check-character-normalization” 設定為 true,而且遇到無法正規化檢查的字元串,則引發 。 </dd><dt><"doctype-not-allowed" [fatal]
/dt<>dd> 如果組態參數 “disallow-doctype” 設定為 true
,而且遇到 doctype,則引發 。 <載入檔時引發 /dd><dt>"no-input-specified" [fatal]
</dt<>dd> ,物件中LSInput
未指定任何輸入。 </dd><dt><"pi-base-uri-not-preserved" [warning]
/dt><dd> 如果在處理指令的基底 URI 無法保留的位置發生處理指令時引發。 如果組態參數 「 entities」 設定為 false
,而且剖析下列 XML 檔案,就會引發這個警告的其中一個範例:
<!DOCTYPE root [ <!ENTITY e SYSTEM 'subdir/myentity.ent' ]>
<root> &e; </root>
與 subdir/myentity.ent
包含:
<one> <two/> </one> <?pi 3.14159?>
<more/>
</dd dt/dt>>"unbound-prefix-in-entity" [warning]
<< dd> 如果組態參數 “namespaces” 設定為 true
,而且實體的取代文字中遇到未系結的命名空間前置詞,可能會引發的實作相依警告。>< 不會強制執行此警告,因為某些現有的剖析器可能無法在實體的取代文字中辨識未系結的命名空間前置詞。 </dd dt/dt><<"unknown-character-denormalization" [fatal]
> dd> 如果組態參數 “ignore-unknown-character-denormalizations” 設定為 false
,而且遇到處理器無法判斷正規化屬性的字元,則引發 。>< <如果遇到不支援的編碼,則引發 /dd><dt><"unsupported-encoding" [fatal]
/dt><dd 。> </dd dt/dt><<"unsupported-media-type" [fatal]
> dd> 如果組態參數 “supported-media-types-only” 設定為 true
,而且遇到不支援的媒體類型,則引發 。>< </dd></dl>
除了引發定義的錯誤和警告之外,實作還預期會引發任何其他錯誤和警告案例的實作特定錯誤和警告,例如 IO 錯誤(找不到檔案、許可權遭拒,...)、XML 格式正確的錯誤等等。
另 請參閱檔物件模型 (DOM) 層級 3 載入和儲存規格。
的 org.w3c.dom.ls.LSParser
Java 檔。
此頁面的部分是根據 Android 開放原始碼專案所建立和共用的工作進行修改,並根據 Creative Commons 2.5 屬性授權中所述的詞彙使用。
欄位
ActionAppendAsChildren |
將剖析作業的結果附加為內容節點的子系。 |
ActionInsertAfter |
將剖析作業的結果插入為緊接在內容節點的同層級之後。 |
ActionInsertBefore |
將剖析作業的結果插入為內容節點的正前同層級。 |
ActionReplace |
將內容節點取代為剖析作業的結果。 |
ActionReplaceChildren |
以剖析作業的結果取代內容節點的所有子系。 |
屬性
Async |
|
Busy |
|
DomConfig |
剖 |
Filter |
提供篩選條件時,實作會在建構 DOM 樹狀結構時呼叫篩選。 |
Handle |
取得基礎 Android 物件的 JNI 值。 (繼承來源 IJavaObject) |
JniIdentityHashCode |
傳回包裝實例的 值 |
JniManagedPeerState |
受控對等的狀態。 (繼承來源 IJavaPeerable) |
JniPeerMembers |
成員存取和調用支援。 (繼承來源 IJavaPeerable) |
PeerReference |
傳 JniObjectReference 回已包裝 Java 物件實例的 。 (繼承來源 IJavaPeerable) |
方法
Abort() |
中止目前由 |
Disposed() |
處置實例時呼叫。 (繼承來源 IJavaPeerable) |
DisposeUnlessReferenced() |
如果這個實例沒有未完成的參考,則呼叫 |
Finalized() |
實例完成時呼叫。 (繼承來源 IJavaPeerable) |
Parse(ILSInput) |
從所 |
ParseURI(String) |
從 URI 參考 [IETF RFC 2396] 所識別的位置剖析 XML 檔。 |
ParseWithContext(ILSInput, INode, Int16) |
從所 |
SetJniIdentityHashCode(Int32) |
設定所 |
SetJniManagedPeerState(JniManagedPeerStates) |
能夠從各種輸入來源建置或增強 DOM 樹狀結構的 物件介面。 (繼承來源 IJavaPeerable) |
SetPeerReference(JniObjectReference) |
設定所 |
UnregisterFromRuntime() |
取消註冊此實例,讓運行時間不會從未來的 Java.Interop.JniRuntime+JniValueManager.PeekValue 調用傳回它。 (繼承來源 IJavaPeerable) |
擴充方法
JavaCast<TResult>(IJavaObject) |
執行 Android 執行時間檢查的類型轉換。 |
JavaCast<TResult>(IJavaObject) |
能夠從各種輸入來源建置或增強 DOM 樹狀結構的 物件介面。 |
GetJniTypeName(IJavaPeerable) |
能夠從各種輸入來源建置或增強 DOM 樹狀結構的 物件介面。 |
ParseAsync(ILSParser, ILSInput) |
能夠從各種輸入來源建置或增強 DOM 樹狀結構的 物件介面。 |
ParseURIAsync(ILSParser, String) |
能夠從各種輸入來源建置或增強 DOM 樹狀結構的 物件介面。 |
ParseWithContextAsync(ILSParser, ILSInput, INode, Int16) |
能夠從各種輸入來源建置或增強 DOM 樹狀結構的 物件介面。 |