วิธีอ่านและแยกวิเคราะห์ไฟล์ XML ใน Java



บทความนี้เกี่ยวกับตัวแยกวิเคราะห์ java XML จะช่วยให้คุณเข้าใจว่าตัวแยกวิเคราะห์ XML คืออะไรและวิธีการแยกวิเคราะห์ไฟล์ XML โดยใช้ตัวแยกวิเคราะห์โดเมนใน Java

XML ภาษามาร์กอัป eXtensible เป็นภาษามาร์กอัปที่กำหนดชุดของกฎสำหรับการเข้ารหัสเอกสารในรูปแบบที่อ่านได้ การแยกวิเคราะห์ XML หมายถึงการดำเนินการผ่านเอกสาร XML เพื่อเข้าถึงหรือแก้ไขข้อมูล อัน ตัวแยกวิเคราะห์ XML จัดเตรียมฟังก์ชันที่จำเป็นในการเข้าถึงหรือแก้ไขข้อมูลในเอกสาร XML ในบทความนี้เรามาดูกัน รายละเอียด XML Parser

XML Parser คืออะไร

ตัวแยกวิเคราะห์ XML คือไลบรารีซอฟต์แวร์หรือแพ็กเกจที่มีอินเทอร์เฟซสำหรับไคลเอ็นต์แอ็พพลิเคชันเพื่อทำงานกับเอกสาร XML ตรวจสอบรูปแบบที่เหมาะสมของเอกสาร XML และตรวจสอบความถูกต้องของเอกสาร XML





แผนภาพต่อไปนี้แสดงให้เห็นว่าตัวแยกวิเคราะห์ XML โต้ตอบกับเอกสาร XML อย่างไร:

ตัวแยกวิเคราะห์ xml - Edureka คุณอาจคิดว่าการตรวจสอบความถูกต้องเป็นอีกขั้นตอนหนึ่งนอกเหนือจากการแยกวิเคราะห์ เนื่องจากส่วนประกอบของโปรแกรมถูกระบุเมื่อทำการแยกวิเคราะห์ตัววิเคราะห์ที่ตรวจสอบความถูกต้องสามารถเปรียบเทียบกับรูปแบบที่ DTD หรือ Schema วางไว้เพื่อตรวจสอบว่าเป็นไปตามนั้น



JAVA XML Parser

องค์ประกอบพื้นฐานของการพัฒนา XML คือการแยกวิเคราะห์ XML การแยกวิเคราะห์ XML สำหรับ Java เป็นคอมโพเนนต์ XML แบบสแตนด์อโลนที่แยกวิเคราะห์เอกสาร XML (และในบางครั้งยังเป็นสคีมา DTD หรือ XML แบบสแตนด์อโลน) เพื่อให้โปรแกรมผู้ใช้สามารถประมวลผลได้ รูปด้านล่างแสดงเอกสาร XML เป็นอินพุตไปยัง XML Parser สำหรับ

  • ส่งเอกสาร XMLเป็นอินพุตไปยัง XML Parser สำหรับ Java
  • อินเทอร์เฟซตัวแยกวิเคราะห์ DOM หรือ SAX จะแยกวิเคราะห์เอกสาร XML
  • จากนั้น XML ที่แยกวิเคราะห์จะถูกโอนไปยังแอปพลิเคชันเพื่อประมวลผลต่อไป

XML Parser สำหรับ Java อาจรวมโปรเซสเซอร์ XSL Transformation (XSLT) แบบรวมสำหรับการแปลงข้อมูล XML โดยใช้สไตล์ชีต XSL ด้วยการใช้โปรเซสเซอร์ XSLT คุณสามารถแปลงเอกสาร XML จาก XML เป็น XML, XML เป็น HTML หรือแทบจะเป็นรูปแบบข้อความอื่น ๆ



isinstance ใน python คืออะไร

Java มีตัวเลือกมากมายในการแยกวิเคราะห์เอกสาร XMLome ของตัวแยกวิเคราะห์ java XML ที่ใช้กันทั่วไปคือ:

java เวกเตอร์คืออะไร
  1. DOM Parser
  2. SAX Parser
  3. StAX Parser
  4. JAXB

ในบทความนี้เรามาดูวิธีการแยกวิเคราะห์ไฟล์ XML โดยใช้ DOM Parser

Java XML Parser - DOM

การตัดสิน หมายถึง Document Object Model DOM Parser เป็นตัวแยกวิเคราะห์ java XML ที่ง่ายที่สุดในการใช้งานและเรียนรู้ มันแยกวิเคราะห์เอกสาร XML ทั้งหมดโหลดลงในหน่วยความจำและสร้างไฟล์ การเป็นตัวแทนของเอกสารลองพิจารณาตัวอย่างง่ายๆเพื่อทำความเข้าใจแนวคิด

เพื่อวัตถุประสงค์ในการสาธิตเราจะใช้ไฟล์ชื่อ พนักงาน. xml . ในไฟล์พนักงานแต่ละคนจะมีรหัสประจำตัวชื่อและนามสกุลอายุและเงินเดือนที่ไม่ซ้ำกันและพนักงานจะแยกตามรหัสของตน

Dean Winchester 30 2500 Sam Davis 22 1500 Jake Peralta 24 2000 Amy Griffin 25 2250

นอกจากนี้เพื่อที่จะจับความคิดของพนักงานเราจึงสร้างคลาส Java ตามลำดับที่เรียกว่า Employee.java ดังแสดงด้านล่าง:

package MyPackage public class พนักงาน {private String ID private String Firstname private String Lastname private int age private double เงินเดือน public Employee (String ID, String Firstname, String Lastname, int age, double เงินเดือน) {this.ID = ID this.Firstname = Firstname this.Lastname = นามสกุล this.age = อายุ this.salary = เงินเดือน} @Override public String toString () {return ''}}

แยกวิเคราะห์ไฟล์ XML โดยใช้ DOM Parser

Document Object Model (DOM) มี API ที่ให้คุณสร้างแก้ไขลบและจัดเรียงโหนดใหม่ได้ตามต้องการ ตัวแยกวิเคราะห์ DOM จะแยกวิเคราะห์เอกสาร XML ทั้งหมดและโหลดเนื้อหา XML ลงในโครงสร้าง Tree ใช้ โหนด และ NodeList คลาสเราสามารถดึงและแก้ไขเนื้อหาของไฟล์ XML

ตัวอย่าง ที่โหลดเนื้อหาของไฟล์ XML และพิมพ์เนื้อหาดังแสดงด้านล่าง:

package MyPackage import java.io.File import java.io.IOException import java.util.ArrayList import java.util.List import javax.xml.parsers.DocumentBuilder import javax.xml.parsers.DocumentBuilderFactory import javax.xml.parsers.ParserConfigurationException import org.w3c.dom.Document import org.w3c.dom.Element import org.w3c.dom.Node import org.w3c.dom.NodeList import org.xml.sax.SAXException public class DomParserExample {public static void main (String [] args) พ่น ParserConfigurationException, SAXException, IOException {// Get Document Builder DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance () DocumentBuilder builder = factory.newDocumentBuilder () // โหลดเอกสารอินพุต XML แยกวิเคราะห์และส่งคืนอินสแตนซ์ของ // คลาสเอกสาร เอกสารเอกสาร = builder.parse (ไฟล์ใหม่ ('พนักงาน.xml')) รายชื่อพนักงาน = ArrayList ใหม่ () NodeList nodeList = document.getDocumentElement () getChildNodes () สำหรับ (int i = 0 i

การเรียกใช้โค้ดเกิดขึ้นดังนี้:

วิธีส่งผ่านข้อมูลอ้างอิงใน java
  • ขั้นแรกคุณต้องนำเข้าแพ็กเกจ dom parser ในแอปพลิเคชัน
  • ขั้นตอนต่อไปคือการสร้าง DocumentBuilder วัตถุ
  • อ่านไฟล์ XML ไปยังวัตถุเอกสาร
  • แยกวิเคราะห์และจัดเก็บไฟล์ XML ในอินสแตนซ์ของคลาส Document
  • เมื่อคุณพบโหนดประเภท Node.ELEMENT_NODE ดึงข้อมูลทั้งหมดและจัดเก็บไว้ในตัวอย่างของคลาสพนักงาน
  • สุดท้ายพิมพ์ข้อมูลของพนักงานที่จัดเก็บไว้ทั้งหมด

เอาต์พุต

 

นั่นคือวิธีที่คุณสามารถแยกวิเคราะห์ไฟล์ XML โดยใช้ DOM Parser DOM parser มีข้อดีและข้อเสีย

ข้อดีและข้อเสียของ DOM Parser

ข้อดี

  • API นั้นใช้งานง่ายมาก
  • รองรับทั้งการอ่านและการเขียน
  • ต้องการเมื่อจำเป็นต้องมีการเข้าถึงแบบสุ่มไปยังส่วนต่างๆของเอกสาร

ข้อเสีย

  • มันเป็นหน่วยความจำไม่มีประสิทธิภาพ ในฐานะที่เป็นขนาดไฟล์เพิ่มขึ้นประสิทธิภาพจะลดลงและใช้หน่วยความจำมากขึ้น
  • ค่อนข้างช้ากว่าตัวแยกวิเคราะห์ XML อื่น ๆ ที่มีอยู่ใน Java

เรามาถึงตอนท้ายของบทความ 'Java XML Parser'

ให้แน่ใจว่าคุณฝึกฝนให้มากที่สุดและเปลี่ยนประสบการณ์

ตรวจสอบไฟล์ โดย Edureka บริษัท การเรียนรู้ออนไลน์ที่เชื่อถือได้ซึ่งมีเครือข่ายผู้เรียนที่พึงพอใจมากกว่า 250,000 คนกระจายอยู่ทั่วโลก เราพร้อมที่จะช่วยเหลือคุณในทุกขั้นตอนในการเดินทางของคุณสำหรับการเป็นนอกเหนือจากคำถามสัมภาษณ์ java นี้เรามาพร้อมกับหลักสูตรที่ออกแบบมาสำหรับนักเรียนและมืออาชีพที่ต้องการเป็น Java Developer

มีคำถามสำหรับเรา? โปรดระบุไว้ในส่วนความคิดเห็นของ 'Java XML Parser' บทความและเราจะติดต่อกลับโดยเร็วที่สุด