matlab分析xml文件
We can modify XML file in Java using DOM parser. We can add elements, remove elements, edit element values, edit attributes in an XML document in java using DOM Parser.
xml文件能更改嗎、 我們可以使用DOM解析器修改Java中的XML文件。 我們可以使用DOM Parser在Java中的XML文檔中添加元素,刪除元素,編輯元素值,編輯屬性。
Let’s say we have below source XML file. We will learn how to modify or edit this XML file in java program using DOM parser.
假設我們有下面的源XML文件。 我們將學習如何使用DOM解析器在Java程序中修改或編輯此XML文件。
讀取xml文件?employee.xml
employee.xml
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<Employees><Employee id="1"><name>Pankaj</name><age>29</age><role>Java Developer</role><gender>Male</gender></Employee><Employee id="2"><name>Lisa</name><age>35</age><role>CSS Developer</role><gender>Female</gender></Employee>
</Employees>
We will edit the XML file with below changes.
matlab讀取table數據? 我們將通過以下更改來編輯XML文件。
Once we make above modification to the XML, we will save it to a different file.
對XML進行以上修改后,我們會將其保存到其他文件中。
matlab table2array?Here is the java program that does all the above updates using DOM Parser.
這是使用DOM分析器進行上述所有更新的Java程序。
ModifyXMLDOM.java
ModifyXMLDOM.java
package com.journaldev.xml;import java.io.File;
import java.io.IOException;import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import javax.xml.parsers.ParserConfigurationException;
import javax.xml.transform.OutputKeys;
import javax.xml.transform.Transformer;
import javax.xml.transform.TransformerException;
import javax.xml.transform.TransformerFactory;
import javax.xml.transform.dom.DOMSource;
import javax.xml.transform.stream.StreamResult;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 ModifyXMLDOM {public static void main(String[] args) {String filePath = "employee.xml";File xmlFile = new File(filePath);DocumentBuilderFactory dbFactory = DocumentBuilderFactory.newInstance();DocumentBuilder dBuilder;try {dBuilder = dbFactory.newDocumentBuilder();Document doc = dBuilder.parse(xmlFile);doc.getDocumentElement().normalize();//update attribute valueupdateAttributeValue(doc);//update Element valueupdateElementValue(doc);//delete elementdeleteElement(doc);//add new elementaddElement(doc);//write the updated document to file or consoledoc.getDocumentElement().normalize();TransformerFactory transformerFactory = TransformerFactory.newInstance();Transformer transformer = transformerFactory.newTransformer();DOMSource source = new DOMSource(doc);StreamResult result = new StreamResult(new File("employee_updated.xml"));transformer.setOutputProperty(OutputKeys.INDENT, "yes");transformer.transform(source, result);System.out.println("XML file updated successfully");} catch (SAXException | ParserConfigurationException | IOException | TransformerException e1) {e1.printStackTrace();}}private static void addElement(Document doc) {NodeList employees = doc.getElementsByTagName("Employee");Element emp = null;//loop for each employeefor(int i=0; i<employees.getLength();i++){emp = (Element) employees.item(i);Element salaryElement = doc.createElement("salary");salaryElement.appendChild(doc.createTextNode("10000"));emp.appendChild(salaryElement);}}private static void deleteElement(Document doc) {NodeList employees = doc.getElementsByTagName("Employee");Element emp = null;//loop for each employeefor(int i=0; i<employees.getLength();i++){emp = (Element) employees.item(i);Node genderNode = emp.getElementsByTagName("gender").item(0);emp.removeChild(genderNode);}}private static void updateElementValue(Document doc) {NodeList employees = doc.getElementsByTagName("Employee");Element emp = null;//loop for each employeefor(int i=0; i<employees.getLength();i++){emp = (Element) employees.item(i);Node name = emp.getElementsByTagName("name").item(0).getFirstChild();name.setNodeValue(name.getNodeValue().toUpperCase());}}private static void updateAttributeValue(Document doc) {NodeList employees = doc.getElementsByTagName("Employee");Element emp = null;//loop for each employeefor(int i=0; i<employees.getLength();i++){emp = (Element) employees.item(i);String gender = emp.getElementsByTagName("gender").item(0).getFirstChild().getNodeValue();if(gender.equalsIgnoreCase("male")){//prefix id attribute with Memp.setAttribute("id", "M"+emp.getAttribute("id"));}else{//prefix id attribute with Femp.setAttribute("id", "F"+emp.getAttribute("id"));}}}}
Output modified version of the XML file from above program is given below.
下面給出了來自上述程序的XML文件的輸出修改版本。
employee_updated.xml
employee_updated.xml
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<Employees><Employee id="M1"><name>PANKAJ</name><age>29</age><role>Java Developer</role><salary>10000</salary>
</Employee><Employee id="F2"><name>LISA</name><age>35</age><role>CSS Developer</role><salary>10000</salary>
</Employee>
</Employees>
That’s all for a quick example of java edit XML file using DOM parser.
這就是使用DOM解析器的Java編輯XML文件的快速示例。
翻譯自: https://www.journaldev.com/901/modify-xml-file-in-java-dom-parser
matlab分析xml文件
版权声明:本站所有资料均为网友推荐收集整理而来,仅供学习和研究交流使用。
工作时间:8:00-18:00
客服电话
电子邮件
admin@qq.com
扫码二维码
获取最新动态