共用方式為


ILSParser 介面

定義

能夠從各種輸入來源建置或增強 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節點的 AttrnodeValue 屬性一開始會傳回 XML 1.0 正規化值。 不過,如果參數 「 validate-if-schema」 和 「 datatype-normalization」 設定為 true,則根據所使用的屬性正規化,屬性值可能會與 XML 1.0 屬性正規化取得的參數不同。 如果參數 「datatype-normalization」 設定為 false,則保證會發生 XML 1.0 屬性正規化,而且如果屬性清單不包含命名空間宣告,Elementattributes則節點上的屬性代表 [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 檔案,就會引發這個警告的其中一個範例:

&lt;!DOCTYPE root [ &lt;!ENTITY e SYSTEM 'subdir/myentity.ent' ]&gt;
            &lt;root&gt; &amp;e; &lt;/root&gt;

subdir/myentity.ent 包含:

&lt;one&gt; &lt;two/&gt; &lt;/one&gt; &lt;?pi 3.14159?&gt;
            &lt;more/&gt;

</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.LSParserJava 檔。

此頁面的部分是根據 Android 開放原始碼專案所建立和共用的工作進行修改,並根據 Creative Commons 2.5 屬性授權中所述的詞彙使用。

欄位

ActionAppendAsChildren

將剖析作業的結果附加為內容節點的子系。

ActionInsertAfter

將剖析作業的結果插入為緊接在內容節點的同層級之後。

ActionInsertBefore

將剖析作業的結果插入為內容節點的正前同層級。

ActionReplace

將內容節點取代為剖析作業的結果。

ActionReplaceChildren

以剖析作業的結果取代內容節點的所有子系。

屬性

Async

trueLSParser如果 為異步,false則為同步。

Busy

trueLSParser如果 目前正忙於載入檔案,則為 ,否則false為 。

DomConfig

DOMConfiguration 析輸入來源時所使用的物件。

Filter

提供篩選條件時,實作會在建構 DOM 樹狀結構時呼叫篩選。

Handle

取得基礎 Android 物件的 JNI 值。

(繼承來源 IJavaObject)
JniIdentityHashCode

傳回包裝實例的 值 java.lang.System.identityHashCode()

(繼承來源 IJavaPeerable)
JniManagedPeerState

受控對等的狀態。

(繼承來源 IJavaPeerable)
JniPeerMembers

成員存取和調用支援。

(繼承來源 IJavaPeerable)
PeerReference

JniObjectReference 回已包裝 Java 物件實例的 。

(繼承來源 IJavaPeerable)

方法

Abort()

中止目前由 LSParser載入的檔。

Disposed()

處置實例時呼叫。

(繼承來源 IJavaPeerable)
DisposeUnlessReferenced()

如果這個實例沒有未完成的參考,則呼叫 Dispose(),否則不會執行任何動作。

(繼承來源 IJavaPeerable)
Finalized()

實例完成時呼叫。

(繼承來源 IJavaPeerable)
Parse(ILSInput)

從所 LSInput識別的資源剖析 XML 檔。

ParseURI(String)

從 URI 參考 [IETF RFC 2396] 所識別的位置剖析 XML 檔。

ParseWithContext(ILSInput, INode, Int16)

從所 LSInput 識別的資源剖析 XML 片段,並將內容插入現有檔中,該位置指定 context 了 和 action 自變數。

SetJniIdentityHashCode(Int32)

設定所 JniIdentityHashCode傳回的值。

(繼承來源 IJavaPeerable)
SetJniManagedPeerState(JniManagedPeerStates)

能夠從各種輸入來源建置或增強 DOM 樹狀結構的 物件介面。

(繼承來源 IJavaPeerable)
SetPeerReference(JniObjectReference)

設定所 PeerReference傳回的值。

(繼承來源 IJavaPeerable)
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 樹狀結構的 物件介面。

適用於