Penelitian utama dalam artikel ini adalah kode Java yang relevan menggunakan DOM untuk menambah, menghapus, memodifikasi, dan mencari dokumen XML. Contoh spesifik seperti yang ditunjukkan di bawah ini.
Kode Sumber:
Paket com.zc.homework18; impor java.io.file; impor javax.xml.parsers.documentbuilder; impor javax.xml.parsers.documentbuilderfactory; impor javax.xml.transform.transformer; impor javax.xml.transform.transform.transformer; impor javax.xml.transformscorsor javax.xml.transform.dom.domsource; import javax.xml.transform.stream.streamResult; import javax.xml.xpath.xpath; import javax.xml.xpath.xpathconstants; impor javax.xml.xpath.xpathexpathic; javax.xml.xpath.xpathfactory; impor org.w3c.dom.document; impor org.w3c.dom.element; impor org.w3c.dom.node; impor org.w3c.dom.nodelist; kelas publik xmlwriter {string statis pribadi xmlpath = "src // com // zc // pekerjaan rumah18 // myxml.xml"; public static void getFamilyMemebers () { /** Buat instance file pabrik* / documentBuilderFactory dbf = documentbuilderfactory.newinstance (); // Jika parser yang dibuat harus menghapus spasi dalam konten elemen saat mem -parsing dokumen XML, memang benar, jika tidak, itu adalah dbf.setignoringElementContentWhitespace yang salah; coba {/** Buat objek file*/ documentBuilder db = dbf.newdocumentBuilder (); // Buat parser untuk parse dokumen dokumen XML dokumen = db.parse (xmlpath); // Gunakan DOM untuk mem -parsing file XML/** Buka daftar dan ekstrak data file XML*/ // Dapatkan semua node terkait sesuai dengan nama node nodelist sonlist = doc.geteLementsByTagname ("son"); untuk (int i = 0; i <sonlist.getLength (); i ++) // Objek pemrosesan looping {// pemrosesan elemen atribut simpul son = (elemen) sonlist.item (i); // semua node anak di node loop son untuk (node node = son.getFirstChild (); node! = Null; node = node .getNextSibling ()) {// Tentukan apakah itu elemen node if (node.getNodetype () == node.element_node) {string name = node.getNodetype () == node.element_node) {string name = node.getNodetype () == node.element_node) {string name = node.getNodetype () == node.element_node) {string name = node.getNodetype () == node.element_node) {string name = node.getNodype () (); node.element_node) {string name = node.getnodype () (node node.element_node). Nilai string = node.getFirstChild (). GetNodevalue (); System.out.println (name + ":" + value); }}}} catch (Exception e) {System.out.println (e.getMessage ()); }}} // Modifikasi public static void modifyson () {// Buat file instance file DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance (); dbf.setignoringElementContentWhitespace (true); coba {// Dapatkan contoh dokumen DOM dari dokumen XML DocumentBuilder db = dbf.newdocumentBuilder (); // Dapatkan dokumen dokumen dokumen xmldoc = db.parse (xmlpath); // Dapatkan elemen node root root = xmldoc.getDocumentElement (); // Posisi simpul dengan ID 001 elemen per = (elemen) SelectsingLenode ("/ayah/son [@id = '001']", root); // Ubah konten node usia menjadi 28 per.getElementsByTagname ("usia"). Item (0) .SetTextContent ("28"); // Save TransformerFactory Factory = TransformerFactory.NewInstance (); Transformer mantan = factory.newtransformer (); mantan.transform (DomSource baru (XMLDOC), New StreamResult (File Baru (XMLPath))); } catch (Exception e) {System.out.println (e.getMessage ()); }} // Dapatkan node target, hapus, dan akhirnya simpan public static void Discardson () {DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance (); dbf.setignoringElementContentWhitespace (true); coba {DocumentBuilder db = dbf.newDocumentBuilder (); Dokumen xmldoc = db.parse (xmlpath); // Dapatkan elemen node root root = xmldoc.getDocumentElement (); // Posisikan simpul dengan ID = 002 di elemen node root son = (elemen) SelectsingLenode ("/ayah/son [@id = '002']", root); // hapus node root.removechild (son); // Save TransformerFactory Factory = TransformerFactory.NewInstance (); Transformer mantan = factory.newtransformer (); mantan.transform (DomSource baru (XMLDOC), New StreamResult (File Baru (XMLPath))); } catch (Exception e) {System.out.println (e.getMessage ()); }} // Tambahkan node baru public static void createSon () {// Buat File Factory Instance DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance (); dbf.setignoringElementContentWhitespace (false); coba {DocumentBuilder db = dbf.newDocumentBuilder (); // Buat dokumen dokumen dokumen xmldoc = db.parse (xmlpath); // Dapatkan elemen node root root = xmldoc.getDocumentElement (); // Buat Node Son, atur ID yang sesuai ke 004 elemen Son = xmldoc.createElement ("son"); son.setAttribute ("id", "004"); // Buat nama elemen nama simpul = xmldoc.createElement ("name"); name.setTextContent ("Little Son"); Son.AppendChild (nama); // Buat elemen usia simpul usia = xmldoc.createelement ("usia"); usia.setTextContent ("0"); Son.AppendChild (usia); // tambahkan putra ke root root root.AppendChild (Son); // Save TransformerFactory Factory = TransformerFactory.NewInstance (); Transformer mantan = factory.newtransformer (); mantan.transform (DomSource baru (XMLDOC), New StreamResult (File Baru (XMLPath))); } catch (Exception e) {System.out.println (e.getMessage ()); }} // Ubah Informasi Node Node Statis Public SelectSingLenode (Ekspresi String, Sumber Elemen) {Node hasil = null; // Buat XPath Factory XPathFactory XPathFactory = XPathFactory.NewInstance (); // Buat Objek XPath XPath XPath = XPathFactory.NewXPath (); coba {result = (node) xpath.evaluate (Express, Source, xpathconstants.node); System.out.println (hasil); } catch (xPathExpressionException e) {System.out.println (e.getMessage ()); } hasil pengembalian; } // cetak public static void main (string [] args) {getFamilyMemebers (); System.out.println ("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~ ~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~ ~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ System.out.println ("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~ System.out.println ("Tambahkan Data");File xml
<?xml version="1.0" encoding="UTF-8" standalone="no"?><father> <son id="001"> <name>Boss</name> <age>20</age> </son> <son id="002"> <name>Second</name> <age>18</age> </son> <son id="003"> <name>Ladder</name> <mua> 13 </mage> </don> </anah>
Meringkaskan
Di atas adalah seluruh konten artikel ini tentang contoh kode Java menggunakan DOM untuk menambah, menghapus, memodifikasi, dan mencari dokumen XML. Saya harap ini akan membantu semua orang. Teman yang tertarik dapat terus merujuk ke topik terkait lainnya di situs ini. Jika ada kekurangan, silakan tinggalkan pesan untuk menunjukkannya. Terima kasih teman atas dukungan Anda untuk situs ini!