IXmlPullParser Antarmuka
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
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 ( "<foo>Hello World!</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 |
| 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 |
| 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 |
| 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 |
| 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 |
| JavaAs<TResult>(IJavaPeerable) |
Cobalah untuk memaksa |
| 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 |