IEntityResolver 介面
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
用於解析實體的基本介面。
[Android.Runtime.Register("org/xml/sax/EntityResolver", "", "Org.Xml.Sax.IEntityResolverInvoker")]
public interface IEntityResolver : Android.Runtime.IJavaObject, IDisposable, Java.Interop.IJavaPeerable
[<Android.Runtime.Register("org/xml/sax/EntityResolver", "", "Org.Xml.Sax.IEntityResolverInvoker")>]
type IEntityResolver = interface
interface IJavaObject
interface IDisposable
interface IJavaPeerable
- 衍生
- 屬性
- 實作
備註
用於解析實體的基本介面。
< > <引用 em>這個模組,包括原始碼和文件,皆屬於公有領域,並附帶<強烈>的無保證</強力>保證。</em> 欲了解更多資訊請參見http://www.saxproject.org。 </區塊引用>
若 SAX 應用程式需要為外部實體實作客製化處理,必須實作此介面並使用 org.xml.sax.XMLReader#setEntityResolver setEntityResolver 該方法向 SAX 驅動程式註冊實例。
XML 讀取器將允許應用程式攔截任何外部實體(包括外部 DTD 子集及外部參數實體,若有的話),再先包含它們。
許多 SAX 應用程式不需要實作此介面,但對於從資料庫或其他專業輸入來源建立 XML 文件的應用程式,或使用非 URL URI 類型的應用程式,特別有用。
以下解析器會為應用程式提供系統識別碼為「http://www.myhost.com/today「的實體的特殊字元串流:
import org.xml.sax.EntityResolver;
import org.xml.sax.InputSource;
public class MyResolver implements EntityResolver {
public InputSource resolveEntity (String publicId, String systemId)
{
if (systemId.equals("http://www.myhost.com/today")) {
// return a special input source
MyReader reader = new MyReader();
return new InputSource(reader);
} else {
// use the default behaviour
return null;
}
}
}
應用程式也可以使用此介面將系統識別碼重新導向至本地 URI,或在目錄中查找替換識別碼(可能使用公開識別碼)。
在 SAX 1.0 中加入。
的 org.xml.sax.EntityResolverJava 檔。
此頁面的部分是根據 Android 開放原始碼專案所建立和共用的工作進行修改,並根據 Creative Commons 2.5 屬性授權中所述的詞彙使用。
屬性
| 名稱 | Description |
|---|---|
| Handle |
取得底層 Android 物件的 JNI 值。 (繼承來源 IJavaObject) |
| JniIdentityHashCode |
回傳包裹實例的 |
| JniManagedPeerState |
管理貴族的狀況。 (繼承來源 IJavaPeerable) |
| JniObjectReferenceControlBlock |
用於解析實體的基本介面。 (繼承來源 IJavaPeerable) |
| JniPeerMembers |
成員存取與召喚支援。 (繼承來源 IJavaPeerable) |
| PeerReference |
回傳JniObjectReference包裹後的 Java 物件實例。 (繼承來源 IJavaPeerable) |
方法
| 名稱 | Description |
|---|---|
| Disposed() |
當實例被處理後才被召喚。 (繼承來源 IJavaPeerable) |
| DisposeUnlessReferenced() |
如果沒有未解決的參考資料,則 |
| Finalized() |
當實例完成後才會被通知。 (繼承來源 IJavaPeerable) |
| ResolveEntity(String, String) |
允許應用程式解析外部實體。 |
| SetJniIdentityHashCode(Int32) |
將回傳的值設為 |
| SetJniManagedPeerState(JniManagedPeerStates) |
用於解析實體的基本介面。 (繼承來源 IJavaPeerable) |
| SetPeerReference(JniObjectReference) |
將回傳的值設為 |
| UnregisterFromRuntime() |
取消註冊此實例,讓執行時不會在未來 Java.Interop.JniRuntime+JniValueManager.PeekValue 的呼叫中回傳該實例。 (繼承來源 IJavaPeerable) |
擴充方法
| 名稱 | Description |
|---|---|
| GetJniTypeName(IJavaPeerable) |
取得實例 |
| JavaAs<TResult>(IJavaPeerable) |
試著強制 |
| JavaCast<TResult>(IJavaObject) |
執行 Android 執行時間檢查的類型轉換。 |
| JavaCast<TResult>(IJavaObject) |
用於解析實體的基本介面。 |
| TryJavaCast<TResult>(IJavaPeerable, TResult) |
試著強制 |