• Java 使用jaxp添加节点


    <?xml version="1.0" encoding="UTF-8"?>
    <person>
        <p1>
            <name>jobs</name>
            <age>56</age>
        </p1>
        <p1>
            <name>Alis</name>
            <age>32</age>
        </p1>
    </person>
    package jaxp;
    
    import javax.xml.parsers.DocumentBuilder;
    import javax.xml.parsers.DocumentBuilderFactory;
    
    
    
    
    
    
    
    import javax.xml.transform.Transformer;
    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.w3c.dom.Text;
    
    
    public class TestJaxp {
        public static void main(String[] args) {
            try {
                addSex();
            } catch (Exception e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
        }
        
        public static void addSex() throws Exception{
            //创建解析器工厂
            DocumentBuilderFactory builderFactory = DocumentBuilderFactory.newInstance();
            //创建解析器
            DocumentBuilder builder = builderFactory.newDocumentBuilder();
            //解析xml返回document
            Document document = document = builder.parse("src/person.xml");
            
            // 得到所有的p1
            NodeList list = document.getElementsByTagName("p1");
            // 得到第一个p1
            Node p1 = list.item(0);
            // 创建标签
            Element sex = document.createElement("sex");
            //创建文本
            Text text = document.createTextNode("female");
            //把文本添加到sex下面
            sex.appendChild(text);
            // 把sex添加到p1下面
            p1.appendChild(sex);
            // 回写xml
            TransformerFactory transformerFactory = TransformerFactory.newInstance();
            Transformer transformer = transformerFactory.newTransformer();
            transformer.transform(new DOMSource(document), new StreamResult("src/person.xml"));
        }
        
    }
    <?xml version="1.0" encoding="UTF-8" standalone="no"?>
    <person>
        <p1>
            <name>jobs</name>
            <age>56</age>
            <sex>female</sex>
        </p1>
        <p1>
            <name>Alis</name>
            <age>32</age>
        </p1>
    </person>
  • 相关阅读:
    背水一战 Windows 10 (90)
    背水一战 Windows 10 (89)
    背水一战 Windows 10 (88)
    背水一战 Windows 10 (87)
    背水一战 Windows 10 (86)
    背水一战 Windows 10 (85)
    背水一战 Windows 10 (84)
    背水一战 Windows 10 (83)
    背水一战 Windows 10 (82)
    背水一战 Windows 10 (81)
  • 原文地址:https://www.cnblogs.com/lantu1989/p/6163791.html
Copyright © 2020-2023  润新知