摘要:文件构建这里指的是目录下增加元素创建元素添加属性添加文本节点追加到根节点元素中写入到文件删除元素删除根节点中第一个元素写入到文件修改元素修改第一个元素中的内容写入到文件查看元素输出元素的属性值输出元素的内容值
XML文件
构建DOM</>复制代码
</>复制代码
import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import org.w3c.dom.Document;
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
DocumentBuilder builder = factory.newDocumentBuilder();
Document doc = builder.parse(this.getClass().getResourceAsStream("/template.xml"));//这里指的是src目录下
增加元素
</>复制代码
Element element = doc.createElement("task");//创建元素
element.setAttribute("id","AAA");//添加属性
element.appendChild(doc.createTextNode("DDD"));//添加文本节点
doc.getDocumentElement().appendChild(element);//追加到根节点元素中
TransformerFactory tFactory =TransformerFactory.newInstance();
Transformer transformer = tFactory.newTransformer();
DOMSource source = new DOMSource(doc);
StreamResult result = new StreamResult(new FileOutputStream(this.getClass().getResource("/template.xml").getPath()));
transformer.transform(source, result);//写入到文件
删除元素
</>复制代码
doc.getDocumentElement().removeChild(doc.getElementsByTagName("task").item(0));//删除根节点中第一个task元素
TransformerFactory tFactory =TransformerFactory.newInstance();
Transformer transformer = tFactory.newTransformer();
MSource source = new DOMSource(doc);
StreamResult result = new StreamResult(new FileOutputStream(this.getClass().getResource("/template.xml").getPath()));
transformer.transform(source, result);//写入到文件
修改元素
</>复制代码
doc.getElementsByTagName("task").item(0).getFirstChild().setNodeValue("ccc");//修改第一个task元素中的内容
TransformerFactory tFactory =TransformerFactory.newInstance();
Transformer transformer = tFactory.newTransformer();
OMSource source = new DOMSource(doc);StreamResult result = new StreamResult(new FileOutputStream(this.getClass().getResource("/template.xml").getPath()));
transformer.transform(source, result);//写入到文件
查看元素
</>复制代码
NodeList tasks = doc.getDocumentElement().getChildNodes();
for(int i = 0;i < tasks.getLength();i++){
System.out.println(((Element)tasks.item(i)).getAttribute("id"));//输出元素的id属性值
System.out.println(tasks.item(i).getNodeValue);//输出元素的内容值
}
文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。
转载请注明本文地址:https://www.ucloud.cn/yun/67969.html
摘要:解析获取解析器获取文档获取根节点获取根节点下所有的子节点,也可以根据标签名称获取指定的直接点获取元素的名称和里面的文本创建创建节点创建属性设置文本设置关系关于解析先讲到这里了,请继续关注乐字节,后续超级干货奉上,快快乐乐学。 大家好,乐字节的小乐又来了,Java技术分享哪里少的了小乐!上次我们说了可扩展标记语言XML之二:XML语言格式规范、文档组成,本文将介绍重点——XML解析。sh...
摘要:通过解析器获取文档对象后,开发人员可以很方便的对其进行操作,如获取更元素,获取一个子元素,增加子元素,移除子元素。它并没有为解析提供任何新功能,但是它为在获取与解析器提供了更加直接的途径。自身不包含解析器,默认使用随包一起发行的。 showImg(/img/bVDhQE?w=888&h=220); 文章最初发表于我的个人博客非典型性程序猿 众所周知,SAX与DOM是JAVA中两大核心X...
摘要:通过解析器获取文档对象后,开发人员可以很方便的对其进行操作,如获取更元素,获取一个子元素,增加子元素,移除子元素。它并没有为解析提供任何新功能,但是它为在获取与解析器提供了更加直接的途径。自身不包含解析器,默认使用随包一起发行的。 showImg(https://segmentfault.com/img/bVDhQE?w=888&h=220); 文章最初发表于我的个人博客非典型性程序猿...
阅读 859·2021-11-19 11:29
阅读 3352·2021-09-26 10:15
阅读 2862·2021-09-22 10:02
阅读 2436·2021-09-02 15:15
阅读 1975·2019-08-30 15:56
阅读 2413·2019-08-30 15:54
阅读 2910·2019-08-29 16:59
阅读 639·2019-08-29 16:20
极致性价比!云服务器续费无忧!
Tesla A100/A800、Tesla V100S等多种GPU云主机特惠2折起,不限台数,续费同价。
NVIDIA RTX 40系,高性价比推理显卡,满足AI应用场景需要。
乌兰察布+上海青浦,满足东推西训AI场景需要