IXmlPullParser Antarmuka

Definisi

XML Pull Parser adalah antarmuka yang menentukan fungsi penguraian yang disediakan dalam XMLPULL V1 API (kunjungi situs web ini untuk mempelajari lebih lanjut tentang API dan implementasinya).

[Android.Runtime.Register("org/xmlpull/v1/XmlPullParser", "", "Org.XmlPull.V1.IXmlPullParserInvoker")]
public interface IXmlPullParser : Android.Runtime.IJavaObject, IDisposable, Java.Interop.IJavaPeerable
[<Android.Runtime.Register("org/xmlpull/v1/XmlPullParser", "", "Org.XmlPull.V1.IXmlPullParserInvoker")>]
type IXmlPullParser = interface
    interface IJavaObject
    interface IDisposable
    interface IJavaPeerable
Turunan
Atribut
Penerapan

Keterangan

XML Pull Parser adalah antarmuka yang menentukan fungsi penguraian yang disediakan dalam XMLPULL V1 API (kunjungi situs web ini untuk mempelajari lebih lanjut tentang API dan implementasinya).

Ada berbagai jenis pengurai berikut tergantung pada fitur mana yang diatur:ul<li b pengurai non-validasi>/b< seperti yang didefinisikan dalam spesifikasi XML 1.0 ketika FEATURE_PROCESS_DOCDECL diatur ke true ><li>b<memvalidasi parser>/b< seperti yang didefinisikan dalam spesifikasi XML 1.0 ketika FEATURE_VALIDATION benar (dan itu menyiratkan bahwa FEATURE_PROCESS_DOCDECL benar) ><li><><>ketika FEATURE_PROCESS_DOCDECL salah (ini default dan jika nilai yang berbeda diperlukan harus diubah sebelum penguraian dimulai) maka pengurai berperilaku seperti pengurai yang tidak memvalidasi XML 1.0 dengan syarat bahwa tidak<ada DOCDECL yang >ada</em> dalam dokumen XML (entitas internal masih dapat ditentukan dengan defineEntityReplacementText()). Mode operasi ini ditujukan <b>untuk operasi di lingkungan</b> yang dibatasi seperti J2ME. </ul>

Ada dua metode utama: next() dan nextToken(). Sementara next() menyediakan akses ke peristiwa penguraian tingkat tinggi, nextToken() memungkinkan akses ke token tingkat yang lebih rendah.

Status peristiwa pengurai saat ini dapat ditentukan dengan memanggil metode getEventType(). Awalnya, pengurai berada dalam status START_DOCUMENT.

Metode next() memajukan pengurai ke peristiwa berikutnya. Nilai int yang dikembalikan dari berikutnya menentukan status pengurai saat ini dan identik dengan nilai yang dikembalikan dari panggilan berikut ke getEventType ().

Jenis peristiwa berikut ini dilihat oleh next()<dl><dt>START_TAG<dd> Tag mulai XML dibaca. <dt>TEXT<dd> Teks konten dibaca; konten teks dapat diambil menggunakan metode getText(). (ketika dalam mode validasi next() tidak akan melaporkan spasi kosong yang dapat diabaikan, gunakan nextToken() sebagai gantinya) <dt>END_TAG<dd> Tag akhir dibaca <dt>END_DOCUMENT<dd> Tidak ada lagi peristiwa yang tersedia </dl>

setelah pertama berikutnya() atau nextToken() (atau metode next*() lainnya) disebut aplikasi pengguna dapat memperoleh versi XML, mandiri dan pengodean dari deklarasi XML dengan cara berikut:<ul><li><b>version</b>: getProperty("http://xmlpull.org/v1/doc/properties.html#xmldecl-version") mengembalikan String ("1.0") atau null jika XMLDecl tidak dibaca atau jika properti tidak didukung <li><b>mandiri</b>: getProperty("http://xmlpull.org/v1/doc/properties.html#xmldecl-standalone") mengembalikan Boolean: null jika tidak ada deklarasi mandiri atau jika properti tidak didukung, mengembalikan Boolean(true) jika standalone="yes" dan Boolean(false) ketika standalone="no" <li><b>encoding</b>: diperoleh dari getInputEncoding() null jika stream memiliki pengodean yang tidak diketahui (tidak diatur dalam setInputStream) dan tidak dideklarasikan dalam XMLDecl </ul>

Contoh minimal untuk menggunakan API ini mungkin terlihat sebagai berikut:

import java.io.IOException;
            import java.io.StringReader;

            import org.xmlpull.v1.XmlPullParser;
            import org.xmlpull.v1.<a href="XmlPullParserException.html">XmlPullParserException</a>;
            import org.xmlpull.v1.<a href="XmlPullParserFactory.html">XmlPullParserFactory</a>;

            public class SimpleXmlPullApp
            {

                public static void main (String args[])
                    throws XmlPullParserException, IOException
                {
                    XmlPullParserFactory factory = XmlPullParserFactory.newInstance();
                    factory.setNamespaceAware(true);
                    XmlPullParser xpp = factory.newPullParser();

                    xpp.<a href="#setInput">setInput</a>( new StringReader ( "&lt;foo>Hello World!&lt;/foo>" ) );
                    int eventType = xpp.getEventType();
                    while (eventType != XmlPullParser.END_DOCUMENT) {
                     if(eventType == XmlPullParser.START_DOCUMENT) {
                         System.out.println("Start document");
                     } else if(eventType == XmlPullParser.START_TAG) {
                         System.out.println("Start tag "+xpp.<a href="#getName()">getName()</a>);
                     } else if(eventType == XmlPullParser.END_TAG) {
                         System.out.println("End tag "+xpp.getName());
                     } else if(eventType == XmlPullParser.TEXT) {
                         System.out.println("Text "+xpp.<a href="#getText()">getText()</a>);
                     }
                     eventType = xpp.next();
                    }
                    System.out.println("End document");
                }
            }

Contoh di atas akan menghasilkan output berikut:

Start document
            Start tag foo
            Text Hello World!
            End tag foo
            End document

Untuk detail selengkapnya tentang penggunaan API, silakan lihat Pengantar cepat yang tersedia di http://www.xmlpull.org

Java dokumentasi untuk org.xmlpull.v1.XmlPullParser.

Bagian dari halaman ini adalah modifikasi berdasarkan pekerjaan yang dibuat dan dibagikan oleh Android Open Source Project dan digunakan sesuai dengan istilah yang dijelaskan dalam Lisensi Creative Commons 2.5 Lisensi Atribusi.

Bidang

Nama Deskripsi
FeatureProcessDocdecl

Fitur ini menentukan apakah deklarasi dokumen diproses.

FeatureProcessNamespaces

Fitur ini menentukan apakah pengurai memproses namespace layanan.

FeatureReportNamespaceAttributes

Fitur ini menentukan apakah atribut namespace diekspos melalui metode akses atribut.

FeatureValidation

Jika fitur ini diaktifkan, semua kesalahan validasi seperti yang didefinisikan dalam XML 1.

NoNamespace

Konstanta ini mewakili namespace default (string kosong "")

Properti

Nama Deskripsi
AttributeCount

Mengembalikan jumlah atribut tag mulai saat ini, atau -1 jika jenis peristiwa saat ini tidak START_TAG

ColumnNumber

Mengembalikan nomor kolom saat ini. Implementasi dapat menggunakan basis yang berbeda; XmlReaderPullParser mengembalikan nomor kolom berbasis nol.

Depth

Mengembalikan kedalaman elemen saat ini.

EventType

Mengembalikan jenis peristiwa saat ini (START_TAG, END_TAG, TEXT, dll.

Handle

Mendapatkan nilai JNI dari objek Android yang mendasar.

(Diperoleh dari IJavaObject)
InputEncoding

Mengembalikan pengodean input jika diketahui, null sebaliknya.

IsEmptyElementTag

Mengembalikan true jika peristiwa saat ini START_TAG dan tag didegenerasi (misalnya <foobar/>).

IsWhitespace

Memeriksa apakah peristiwa TEXT saat ini hanya berisi karakter spasi kosong.

JniIdentityHashCode

Mengembalikan nilai java.lang.System.identityHashCode() untuk instans yang dibungkus.

(Diperoleh dari IJavaPeerable)
JniManagedPeerState

Status serekan terkelola.

(Diperoleh dari IJavaPeerable)
JniPeerMembers

Akses anggota dan dukungan pemanggilan.

(Diperoleh dari IJavaPeerable)
LineNumber

Mengembalikan nomor baris saat ini, mulai dari 1.

Name

Untuk peristiwa START_TAG atau END_TAG, nama (lokal) elemen saat ini dikembalikan saat namespace diaktifkan.

Namespace

Mengembalikan URI namespace dari elemen saat ini.

PeerReference

Mengembalikan instans objek Java yang dibungkusJniObjectReference.

(Diperoleh dari IJavaPeerable)
PositionDescription

Mengembalikan teks pendek yang menjelaskan status pengurai saat ini, termasuk posisi, deskripsi peristiwa saat ini, dan sumber data jika diketahui.

Prefix

Mengembalikan awalan elemen saat ini.

Text

Mengembalikan konten teks peristiwa saat ini sebagai String.

Types

Array ini dapat digunakan untuk mengonversi konstanta bilangan bulat jenis peristiwa seperti START_TAG atau TEXT menjadi string.

Metode

Nama Deskripsi
DefineEntityReplacementText(String, String)

Tetapkan nilai baru untuk teks pengganti entitas seperti yang didefinisikan dalam XML 1.0 Bagian 4.5 Konstruksi Teks Penggantian Entitas Internal.

Disposed()

Dipanggil ketika instans telah dibuang.

(Diperoleh dari IJavaPeerable)
DisposeUnlessReferenced()

Jika tidak ada referensi yang luar biasa untuk instans ini, maka panggilan Dispose(); jika tidak, tidak melakukan apa pun.

(Diperoleh dari IJavaPeerable)
Finalized()

Dipanggil ketika instans telah diselesaikan.

(Diperoleh dari IJavaPeerable)
GetAttributeName(Int32)

Mengembalikan nama lokal atribut yang ditentukan jika namespace diaktifkan atau hanya nama atribut jika namespace dinonaktifkan.

GetAttributeNamespace(Int32)

Mengembalikan URI namespace atribut dengan indeks yang diberikan (dimulai dari 0).

GetAttributePrefix(Int32)

Mengembalikan awalan atribut yang ditentukan Mengembalikan null jika elemen tidak memiliki awalan.

GetAttributeType(Int32)

Mengembalikan jenis atribut yang ditentukan Jika pengurai tidak memvalidasinya HARUS mengembalikan CDATA.

GetAttributeValue(Int32)

Mengembalikan nilai atribut yang diberikan.

GetAttributeValue(String, String)

Mengembalikan nilai atribut yang diidentifikasi oleh URI namespace dan namespace localName.

GetFeature(String)

Mengembalikan nilai saat ini dari fitur yang diberikan.

GetNamespace(String)

Mengembalikan URI yang sesuai dengan awalan yang diberikan, tergantung pada status pengurai saat ini.

GetNamespaceCount(Int32)

Mengembalikan jumlah elemen dalam tumpukan namespace untuk kedalaman yang diberikan.

GetNamespacePrefix(Int32)

Mengembalikan awalan namespace untuk posisi yang diberikan dalam tumpukan namespace.

GetNamespaceUri(Int32)

Mengembalikan URI namespace untuk posisi yang diberikan dalam tumpukan namespace jika posisi di luar rentang, pengecualian akan dilemparkan.

GetProperty(String)

Cari nilai properti.

GetTextCharacters(Int32[])

Mengembalikan buffer yang berisi teks peristiwa saat ini, serta offset awal dan panjang yang relevan untuk peristiwa saat ini.

IsAttributeDefault(Int32)

Mengembalikan jika atribut yang ditentukan tidak dalam input dideklarasikan dalam XML.

Next()

Dapatkan peristiwa penguraian berikutnya - konten elemen akan dikoalesced dan hanya satu peristiwa TEXT yang harus dikembalikan untuk seluruh konten elemen (komentar dan instruksi pemrosesan akan diabaikan dan referensi entitas harus diperluas atau pengecualian harus dilemparkan jika referensi entitas tidak dapat diperluas).

NextTag()

Panggil next() dan kembalikan peristiwa jika START_TAG atau END_TAG jika tidak, berikan pengecualian.

NextText()

Jika peristiwa saat ini START_TAG maka jika elemen berikutnya adalah TEXT, maka konten elemen dikembalikan atau jika peristiwa berikutnya END_TAG maka string kosong dikembalikan, jika tidak, pengecualian akan dilemparkan.

NextToken()

Metode ini berfungsi sama dengan next() tetapi akan mengekspos jenis peristiwa tambahan (COMMENT, CDSECT, DOCDECL, ENTITY_REF, PROCESSING_INSTRUCTION, atau IGNORABLE_WHITESPACE) jika tersedia dalam input.

Require(XmlPullParserNode, String, String)

Uji apakah peristiwa saat ini adalah jenis yang diberikan dan apakah namespace layanan dan nama cocok.

SetFeature(String, Boolean)

Gunakan panggilan ini untuk mengubah perilaku umum pengurai, seperti pemrosesan namespace layanan atau penanganan deklarasi doctype.

SetInput(Reader)

Atur sumber input untuk pengurai ke pembaca yang diberikan dan atur ulang pengurai.

SetInput(Stream, String)

Mengatur aliran input yang akan diproses parser.

SetJniIdentityHashCode(Int32)

Atur nilai yang dikembalikan oleh JniIdentityHashCode.

(Diperoleh dari IJavaPeerable)
SetJniManagedPeerState(JniManagedPeerStates)

XML Pull Parser adalah antarmuka yang menentukan fungsi penguraian yang disediakan dalam XMLPULL V1 API (kunjungi situs web ini untuk mempelajari lebih lanjut tentang API dan implementasinya).

(Diperoleh dari IJavaPeerable)
SetPeerReference(JniObjectReference)

Atur nilai yang dikembalikan oleh PeerReference.

(Diperoleh dari IJavaPeerable)
SetProperty(String, Object)

Atur nilai properti.

UnregisterFromRuntime()

Batalkan pendaftaran instans ini sehingga runtime tidak akan mengembalikannya dari pemanggilan di masa mendatang Java.Interop.JniRuntime+JniValueManager.PeekValue .

(Diperoleh dari IJavaPeerable)

Metode Ekstensi

Nama Deskripsi
GetJniTypeName(IJavaPeerable)

Mendapatkan nama JNI dari jenis instans self.

JavaAs<TResult>(IJavaPeerable)

Cobalah untuk memaksa self untuk mengetik TResult, memeriksa bahwa paksaan valid di sisi Java.

JavaCast<TResult>(IJavaObject)

Melakukan konversi jenis yang diperiksa runtime Android.

JavaCast<TResult>(IJavaObject)

XML Pull Parser adalah antarmuka yang menentukan fungsi penguraian yang disediakan dalam XMLPULL V1 API (kunjungi situs web ini untuk mempelajari lebih lanjut tentang API dan implementasinya).

NextAsync(IXmlPullParser)

XML Pull Parser adalah antarmuka yang menentukan fungsi penguraian yang disediakan dalam XMLPULL V1 API (kunjungi situs web ini untuk mempelajari lebih lanjut tentang API dan implementasinya).

NextTagAsync(IXmlPullParser)

XML Pull Parser adalah antarmuka yang menentukan fungsi penguraian yang disediakan dalam XMLPULL V1 API (kunjungi situs web ini untuk mempelajari lebih lanjut tentang API dan implementasinya).

NextTextAsync(IXmlPullParser)

XML Pull Parser adalah antarmuka yang menentukan fungsi penguraian yang disediakan dalam XMLPULL V1 API (kunjungi situs web ini untuk mempelajari lebih lanjut tentang API dan implementasinya).

NextTokenAsync(IXmlPullParser)

XML Pull Parser adalah antarmuka yang menentukan fungsi penguraian yang disediakan dalam XMLPULL V1 API (kunjungi situs web ini untuk mempelajari lebih lanjut tentang API dan implementasinya).

TryJavaCast<TResult>(IJavaPeerable, TResult)

Cobalah untuk memaksa self untuk mengetik TResult, memeriksa bahwa paksaan valid di sisi Java.

Berlaku untuk