مقدمة
عند تعلم رمز مصدر طبقة إطار عمل Android ، يستخدم Android XMLPullParser لحل الكود المصدري لملف XML. لذلك ، هنا هو أيضا استخدام XMLPullParser.
XML
XML (لغة الترميز القابلة للتمديد) الاسم الصيني هو لغة علامة قابلة للتطوير. تشير العلامة إلى رمز المعلومات الذي يمكن أن يفهمه الكمبيوتر.
يستخدم
يستخدم تصميم XML معلومات البيانات.
بناء
يبدأ كل مستند XML بمقدمة XML. يخبر سطر الكود هذا المحلل أو المتصفح. ومع ذلك ، يتم تعريف اسم عنصر الجذر بواسطة نوع المستند أو مخطط XML.
xmlpullparser
يعتمد سحب XML على ملفات XML ذات الحدث. يوفر محلل السحب أربعة أنواع تحليل الأحداث: start_document (مستند بدء) ، end_document عندما تكون في عنصر معين ، يمكنك استدعاء طريقة getTattributeValue () للحصول على قيمة السمة. دعونا نحلله من خلال مثال.
ملف مثال XML
رمز ملف عينة XML الذي يحتاج إلى تحليله كما يلي:
<الإصدار XML = "1.0" charcoding = "utf-8"؟ sex> </soltague> <comeenuge id = "2"> <name> lulu </mame> <te> 28 </teg> <exh> girl </sexh> </comeengue id = "3"> <name> تشن شان </name> <AGE> 26 </ENGE> <ESS> بوي </sex> </sylemage> </tegaleagues>
xmlpullparser parser
Package.example.shakeMo. استيراد org.xmlpull.v1.xmlpullparseRextive ؛ {LIST <MALIEGUES> زملاء ؛ () ؛ (EventType! = xmlpullparser.ecument) {switch pe) {case xmlpullparser.start_document: قيمة العقدة من خلال getTattributeValue (i) */ string name = parser.getName () ؛ (null ، "id") ؛} آخر إذا ("الاسم". .equals (name)) {if (colorague! = null) {commite.setage (integer.parseint (parser.nexttext ()) ؛}} آخر إذا ("الجنس". null) {colorague.setsex (parser.nexttext () ؛} null ؛} eventType = parser.next () ؛} lreamer.close () ؛} catch (xmlpullparserexception e) {// do nothing} catch (ioException e) {// لا شيء}من بينها ، تعريف فئة الزميل بسيط نسبيًا ، والرمز كما يلي:
حزمة com.example.shakedemo Age ؛} public void setage (int age) {this.age = age ؛} السلسلة العامة getName () {) d setName (اسم السلسلة) {this.name = name ؛} السلسلة العامة getSex () {return sex ؛} public void setSex (سلسلة الجنس) {this.sex = sex ؛} Override Public String ToString () {return "id" + id + "، الاسم" + name + "، الجنس هو" + sex ؛}}