การวิเคราะห์การสนับสนุน Delphi7 ของ XML ZHJ
การสนับสนุน Delphi7 สำหรับ XML --- TxMldocument Class
DELPHI7 รองรับการดำเนินการในเอกสาร XML และสามารถใช้คลาส TxMlDocument เพื่ออ่านและเขียนเอกสาร XML คุณสามารถใช้ txmldocument เพื่ออ่านเอกสาร XML ลงในหน่วยความจำเพื่อให้คุณสามารถแก้ไขและบันทึกการดำเนินการ คลาส TxMlDocument เข้าถึงแต่ละองค์ประกอบในเอกสาร XML ผ่านอินเตอร์เฟส DOM (โมเดลวัตถุเอกสาร) มีหลายวิธีในการใช้งานอินเทอร์เฟซ DOM สำหรับวิธีการใช้งานอินเตอร์เฟสที่แตกต่างกันคุณสามารถควบคุมได้โดยการตั้งค่า domvender ของ txmldocument หน่วย Delphi ที่รองรับ XML ส่วนใหญ่มีอยู่ในไดเรกทอรี…/Borland/Delphi7/Source/XML ส่วนใหญ่รวมถึง: XMLINTF, XMLDOC, XMLDOM, MSXMLDOM, XERCESXMLDOM, XDOM, OxMLDOM และหน่วยอื่น ๆ
L XMLINTF - รวมถึงอินเทอร์เฟซของเอกสาร XML ที่กำหนดโดย Borland; L MSXMLDOM - การใช้งานอินเทอร์เฟซของ Microsoft ที่กำหนดไว้ใน XMLDOM ส่วนใหญ่เรียกวัตถุ COM ของ Microsoft เพื่อนำไปใช้ การห่อหุ้มส่วนต่อประสานที่กำหนดไว้ใน Xmldom;
สำหรับคุณสมบัติของ txmldocument โปรดดูไฟล์ช่วยเหลือของ Borland
อ่านและเขียนเอกสาร XML
l การอ่านเอกสาร XML const xmldata: domstring): ixmldocument; อินเทอร์เฟซ IXMLDOCUMENT สำหรับการดำเนินการเอกสาร คุณสามารถใช้ newxmldocument เพื่ออ่านเอกสาร XML ด้วยวิธีนี้: xmldoc: = newxmldocument;
l การบันทึกเอกสาร XML สามารถบันทึกได้ในวิธีต่อไปนี้:
xmldoc: = newxmldocument;
เลือกวิธีการแยกวิเคราะห์ XML ประเภทต่างๆ
มีการกล่าวถึงข้างต้นว่ามีสามวิธีในการใช้งาน DOM นั่นคือคุณสามารถใช้ตัวแยกวิเคราะห์ XML สามตัวที่แตกต่างกันโดย Borland เพื่อแยกวิเคราะห์เอกสาร XML; ตัวแยกวิเคราะห์จะได้รับการติดตั้งเมื่อติดตั้ง MSXML SDK ในเวลาเดียวกันเบราว์เซอร์ IE ยังมีตัวแยกวิเคราะห์ซึ่งเป็น com 2. Xerces Parser Borland ใช้ตัวแยกวิเคราะห์ XerCes ซึ่งสามารถนำไปใช้ได้โดยการเรียกโมดูล XerCesxmldom.dll; ไฟล์ DLL สามตัวที่แยกออกมาจากตัวแยกวิเคราะห์นี้มีอยู่ในหน่วย XDOM.PAS การเปรียบเทียบตัวแยกวิเคราะห์ที่แตกต่างกันสำหรับการเปรียบเทียบตัวแยกวิเคราะห์สามวิธีมีดังนี้: 1. Microsoft Parser Microsoft Parser นั้นดีแน่นอน แต่มันไม่สามารถแยกแยะการมีอยู่ของสถานการณ์ที่ไม่คาดคิดในประสบการณ์ส่วนตัวของฉันอย่างน้อยวิธีการวิเคราะห์ XML ของ บริษัท ของเรา ทำงานตามปกติใน IE6.0 หรือสูงกว่า; หน่วย) มีปัญหามากขึ้น จากนั้น DLL ที่จะต้องเปิดตัวด้วยแอปพลิเคชันรวมถึง XerCesxMldom.dll, XerCeslib.dll, CC3260MT.DLL; หน่วย XDOM.PAS ซึ่งมีซอร์สโค้ดสำหรับการแยกวิเคราะห์ XML ที่สมบูรณ์ ข้อเสียเพียงอย่างเดียวคือแอปอาจมีขนาดใหญ่กว่า
l วิธีใช้พาร์สเซอร์ที่แตกต่างกันเราสามารถเขียนฟังก์ชั่นเพื่อใช้พาร์สเออร์ที่แตกต่างกัน; xmldoc.domvendor: = getDomvendor (Domvender);
หาก Domvender ถูกแยกวิเคราะห์ในสามวิธีที่ Borland จัดทำขึ้นค่าคือ: Microsoft - SMSXML ค่าคงที่ที่มีอยู่ในหน่วย MSXMLDOM.PAS; . pas unit;
นี่เป็นเพราะส่วนที่ initalization ของสามหน่วย msxmldom, xercesxmldom และ oxmldom ล้วนลงทะเบียนด้วยอินเทอร์เฟซตัวแยกวิเคราะห์ที่แตกต่างกันโดยเรียกฟังก์ชัน registerdomvendor;
แน่นอนว่าบอร์แลนด์ยังมีกลไกที่สามารถขยายได้อย่างยืดหยุ่นเพื่อขยายตัวแยกวิเคราะห์ของผู้ใช้เองซึ่งต้องมีการสืบทอดคลาส TDOMVENDOR (ที่มีอยู่ในหน่วย XMLDOM) ในความเป็นจริง Borland ใช้ตัวแยกวิเคราะห์ในรูปแบบที่แตกต่างกันในลักษณะนี้;
สรุปแล้ว
ในฐานะที่เป็นเครื่องมือการพัฒนาที่ประสบความสำเร็จการสนับสนุนของ Delphi สำหรับ XML นั้นมีความเสถียรและมีประสิทธิภาพมากกว่าการใช้งานบางอย่างบนเครือข่าย แน่นอนคุณสามารถใช้ตัวแยกวิเคราะห์ XML ที่แตกต่างกันด้วยตัวเองหรือคุณสามารถใช้โปรแกรมแยกวิเคราะห์ที่มีอยู่ได้ ในขณะเดียวกันก็เห็นได้ว่าการสนับสนุนของ Delphi สำหรับ XML นั้นสมบูรณ์มากเช่นกัน
ข้อมูลติดต่อ: [email protected]