คำนำ
เมื่อเรียนรู้ซอร์สโค้ดเลเยอร์เฟรมเวิร์กของ Android Android จะใช้ XMLPULLPARSER เพื่อแก้ไขซอร์สโค้ดของไฟล์ XML ดังนั้นนี่คือการใช้ XMLPULLPARSER
XML
XML (ภาษามาร์กอัปที่ขยายได้) ชื่อภาษาจีนเป็นภาษาแท็กที่ปรับขนาดได้ เครื่องหมายหมายถึงสัญลักษณ์ข้อมูลที่คอมพิวเตอร์สามารถเข้าใจได้
ใช้
การออกแบบ XML ใช้ข้อมูลการส่งและการพกพา
โครงสร้าง
เอกสาร XML แต่ละฉบับเริ่มต้นด้วยคำนำหน้า XML บรรทัดของรหัสนี้บอกตัวแยกวิเคราะห์หรือเบราว์เซอร์ อย่างไรก็ตามชื่อขององค์ประกอบรูทถูกกำหนดโดยประเภทเอกสารหรือโครงร่าง XML
xmlpullparser
Pull Parsing XML ขึ้นอยู่กับไฟล์ XML ที่ขับเคลื่อนด้วยเหตุการณ์ ตัวแยกวิเคราะห์แบบดึงมีการวิเคราะห์เหตุการณ์สี่ประเภท: start_document (เอกสารเริ่มต้น), end_document เมื่อคุณอยู่ในองค์ประกอบที่แน่นอนคุณสามารถเรียกวิธี GetTattributeValue () เพื่อรับค่าของแอตทริบิวต์ มาวิเคราะห์ผ่านตัวอย่าง
ไฟล์ตัวอย่าง XML
รหัสไฟล์ตัวอย่าง XML ที่ต้องแยกวิเคราะห์มีดังนี้:
<? XML เวอร์ชัน = "1.0" การเข้ารหัส = "UTF-8" Sex> </colorague> <เพื่อนร่วมงาน id = "2"> <name> lulu </name> <te> 28 </sy> <ex> สาว </ene> </solague id = "3"> <name> Chen Shan </name> <sy> 26 </ge> <ex> Boy </ex> </sollague> </deleagues>
XMLPULLPARSER PARSER
com.example.Shakedemo; นำเข้า org.xmlpull.v1.xmlpullparserexception; {รายการ <dolague> เพื่อนร่วมงาน = new ArrayList <); เพื่อนร่วมงานที่ส่งคืน;} ลอง {// วิธีการที่ 1: ใช้ Android.util.xml โดย Android Arser Parser = XML.NewPullParser (); (); (EventType! = XMLPULLPARSER.ECUMENT) {สวิตช์ PE) {CASE XMLPULLPARSER.START_DOCUMENT: BREAK; ค่าโหนดแอตทริบิวต์ผ่าน getTattributeValue (i) */ string name = parser.getName (); (null, "id"));} อื่นถ้า ("ชื่อ" .quals (ชื่อ)) {ถ้า (colorague! = null) {colorague.setName (parser.nexttext ());}} อื่นถ้า ("อายุ" .equals (ชื่อ)) {ถ้า (colorague! = null) {colleague.setage (integer.parseint (parser.nexttext ());}} อื่นถ้า ("เพศ". เท่า equals (ชื่อ)) {ถ้าเพื่อนร่วมงาน! = = null) {colorague.setsex (parser.nexttext ());} break; null;} eventtype = parser.next ();} lreamer.close ();} catch (xmlpullparserexception e) {// ไม่ทำอะไรเลยในหมู่พวกเขาคำจำกัดความของคลาสเพื่อนร่วมงานค่อนข้างง่ายและรหัสมีดังนี้:
แพ็คเกจ com.example.shakedemo; อายุ;} การตั้งค่าโมฆะสาธารณะ (อายุ int) {this.age = age;} สตริงสาธารณะ getName () {) d setName (ชื่อสตริง) {this.name = name;} public String getsex () {return sex;} สาธารณะ เป็นโมฆะ SetSex (String Sex) {this.sex = sex;} @Override สตริงสาธารณะ toString () {return "id คือ" + id + "ชื่อคือ" + ชื่อ + "เพศคือ" + เพศ;}}