Java xml节点属性的修改[通俗易懂]

Java xml节点属性的修改[通俗易懂]Javaxml节点属性的修改修改xml节点的属性,我们先建立一个修改之前的xml文档:操作xml文档的java程序文件test.javapackagecom.pb.test;importjava.io.FileOutputStream;importjavax.xml.parsers.DocumentBuilder;importjavax.xml.p

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

Java xml节点属性的修改

修改xml节点的属性,我们先建立一个修改之前的xml文档:

<?xml version=”1.0″ encoding=”GB2312″ standalone=”no”?><PhoneInfo>
<Brand name=”苹果”><Type name=”U865440″/></Brand><Brand name=”苹果”><Type name=”U865440″/></Brand></PhoneInfo>

操作xml文档的java程序文件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”);
            
            NodeList list=doc.getElementsByTagName(“Brand”);
            for(int i=0;i<list.getLength();i++){

                Element brandElement=(Element) list.item(i);
                String brandName=brandElement.getAttribute(“name”);
                if(brandName.equals(“苹果”)){

                    //属性修改
                    brandElement.setAttribute(“name”, “Apple”);
                }
            }
            
            
            //保存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());
        }
    }
}

运行此程序后,xml文件内容变成:

<?xml version=”1.0″ encoding=”GB2312″ standalone=”no”?><PhoneInfo>
<Brand name=”Apple”><Type name=”U865440″/></Brand><Brand name=”Apple”><Type name=”U865440″/></Brand></PhoneInfo>

之前的Brand 内name属性苹果成功更改为Apple,表示xml文件修改成功。

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

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

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

相关推荐

  • mysql如何进行分区_mysql如何进行分区_mysql分区有哪些方法「建议收藏」

    mysql如何进行分区_mysql如何进行分区_mysql分区有哪些方法「建议收藏」MySQL可应用于多种语言,包括PERL,C,C++,JAVA和PHP。在这些语言中,MySQL在PHP的web开发中是应用最广泛。大家知道mysql如何分区的吗?下面由学习啦小编为大家整理的mysql分区的方法,希望大家喜欢!mysql分区的方法一、概述当MySQL的总记录数超过了100万后,会出现性能的大幅度下降吗?答案是肯定的,但是,性能下降>的比率不一而同…

    2022年5月31日
  • 【QGIS入门实战精品教程】2.1:初识QGIS软件[通俗易懂]

    【QGIS入门实战精品教程】2.1:初识QGIS软件[通俗易懂]从今天开始,我们一起来学习一款免费开源、对机器要求低、功能强大的GIS软件:QGIS!一、QGIS简介QGIS(原称QuantumGIS)是一个自由软件的桌面GIS软件。它提供数据的显示、编辑和分析功能。QGIS是一个用户界面友好的桌面地理信息系统,可运行在Linux、Unix、MacOSX和Windows等平台之上。QGIS是基于Qt,使用C++开发的一个用户界面友好、跨平台的免费开源版桌面地理信息系统。二、QGIS软件的主要特点支持多种GIS数据文件格式。通过GDAL..

    2022年6月16日
  • 解释mss的定义_sas读取数据按行读取

    解释mss的定义_sas读取数据按行读取MSEloss1.定义 均方差loss 计算公式如下loss=1/M∑0m(y−x)2loss=1/M\sum_{0}^m{(y-x)^2}loss=1/M0∑m​(y−x)2importtorchimporttorch.nnasnnfromtorch.autogradimportVariableinputs=Variable(torch.ten…

    2022年9月15日
  • centos通过yum安装jdk1.8

    centos通过yum安装jdk1.8查看命令检查yum文件yumsearchjava|grepjdk如果没有1.8的自己跟新一下yum即可yum-yupdate安装命令yuminstalljava-1.8.0-openjdkyumload-transaction/tmp/yum_save_tx.2021-12-11.13-30.uGD_Sw.yumtx验证

    2022年5月8日
  • JUnit学习笔记

    JUnit学习笔记

    2021年9月15日
  • 程序员工资统计_中国程序员工资

    程序员工资统计_中国程序员工资此调查,是对北京、上海、广东和浙江等全国29个省、直辖市及特别行政区的26W+优秀程序员进行了一次详细的调查,形成本报告。根据中国互联网络信息中心(CNNIC)近日发布第43次《中国互联网络发展状况统计报告》。截至2018年12月,中国网民规模为8.29亿,全年新增网民5653万。网上外卖用户规模达4.06亿,同比增长18.2%;网络视频用户规模达6.1…

    2022年10月11日

发表回复

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

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