Java xml 添加节点

Java xml 添加节点建立一个xml文件test.xml,文件内容如下通过java操作生成xml节点的文件test.java,文件内容:packagecom.pb.test;importjava.io.FileOutputStream;importjavax.xml.parsers.DocumentBuilder;importjavax.xml.parsers.Docum

大家好,又见面了,我是你们的朋友全栈君。

建立一个xml文件test.xml,文件内容如下

<?xml version=”1.0″ encoding=”GB2312″ standalone=”no”?><PhoneInfo>
</PhoneInfo>

通过java操作生成xml节点的文件test.java,文件内容:

package com.pb.test;
import java.io.FileOutputStream;
import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import javax.xml.transform.OutputKeys;
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;
public class Test {

    public static void main(String[] args) {

        try {

            // 1.得到DOM解析器的工厂实例
            DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
            // 2.从DOM工厂里获取DOM解析器
            DocumentBuilder db = dbf.newDocumentBuilder();
            // 3.解析XML文档,得到document,即DOM树
            Document doc = db.parse(“src/test.xml”);
            // 创建节点
            Element brandElement = doc.createElement(“Brand”);
            brandElement.setAttribute(“name”, “华为”);
            //创建type节点
            Element typeElement=doc.createElement(“Type”);
            typeElement.setAttribute(“name”, “U8650”);
            //添加父子关系
            brandElement.appendChild(typeElement);
            Element phoneElement=(Element)doc.getElementsByTagName(“PhoneInfo”).item(0);
            phoneElement.appendChild(brandElement);
            //保存xml文件
            TransformerFactory transformerFactory=TransformerFactory.newInstance();
            Transformer transformer=transformerFactory.newTransformer();
            DOMSource domSource=new DOMSource(doc);
            //设置编码类型
            transformer.setOutputProperty(OutputKeys.ENCODING, “GB2312”);
            StreamResult result=new StreamResult(new FileOutputStream(“src/test.xml”));
            //把DOM树转换为xml文件
            transformer.transform(domSource, result);
        } catch (Exception ex) {

            System.out.println(ex.getMessage());
        }
    }
}

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/162484.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 华为裁员1100人!任正非痛批管理层:这种领导鼠目寸光

    华为裁员1100人!任正非痛批管理层:这种领导鼠目寸光Python实战社群Java实战社群长按识别下方二维码,按需求添加扫码关注添加客服进Python社群▲扫码关注添加客服进Java社群▲华为还是裁员了,一裁就是1100人。距离任正非4.2…

    2022年7月18日
    41
  • ES6 json转map map转json

    ES6 json转map map转json1、json转map<script>letjson={“name”:”ES6″,”day”:”2014″,”feature”:”新特性”}; //json2map letmap=newMap(); for(letiinjson){ map.set(i,json[i]); } console.log(map);</script…

    2022年6月15日
    29
  • git clone 后的文件找不到在哪?

    git clone 后的文件找不到在哪?经常在gihub上下载文件,但是发现这样clone下后不知道文件给放哪了?一般情况下会存放在命令行对应的目录下:win+R>cmd查看命令行地址:这个地址就是你git后的地址。如果想要改变git后的存放地址也简单,先改变命令行的地址,在gitclone文件,这里提供一个快捷的方式,在你目标文件夹下,shift+右键,选择打开powershell窗口,就会打开…

    2022年7月21日
    269
  • FFmpeg从入门到精通笔记之二

    FFmpeg从入门到精通笔记之二FFmpeg中常用的工具主要是ffmpeg、ffprobe、ffplay,它们分别用作多媒体的编解码工具、内容分析工具和播放器。ffmpeg常用命令ffmpeg的封装转换。ffmpeg的封装转换(转封装)功能包含在AVFormat模块中,通过libavformat库进行Mux和Demux操作.  *多媒体文件的格式有很多种,这些格式中的很多参数在Mux与Demux的操作参数中是公用的,…

    2022年6月26日
    27
  • insertBefore()

    insertBefore()insertBefore()方法将把一个给定的节点插入到一个给定元素节点的给定子节点前面,他返回一个指向新增子节点的引用指针:如上所示,节点newNode将被插入元素节点element并出现在节点t

    2022年8月2日
    3
  • springBoot笔记(一)「建议收藏」

    springBoot笔记(一)「建议收藏」1、直接在application.properties中写端口 server.port=8081server.servlet.context-path=/luck2、在resources包下创建application.yml 将配置文件写在里面 server: port: 8082 servlet: context-path: /lu…

    2022年6月13日
    29

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号