gpt4 book ai didi

java - 如何更改 XML 文件中某些元素和属性的值 [Java]?

转载 作者:数据小太阳 更新时间:2023-10-29 02:18:11 28 4
gpt4 key购买 nike

我正在使用 SAX 解析器读取 XML 文件(这部分可以更改,这是有充分理由的)。

当我找到必要的属性时,我需要更改它们的值并将生成的 XML 文件另存为新文件。

我该怎么做?

最佳答案

Afaik,SAX 只是解析器。您必须选择不同的库来编写 XML。

如果您只是更改属性或更改元素名称而不是更改 XML 的结构,那么这应该是相对容易的任务。使用 STaX 作为编写器:

// Start STaX 
OutputStream out = new FileOutputStream("data.xml");
XMLOutputFactory factory = XMLOutputFactory.newInstance();
XMLStreamWriter writer = factory.createXMLStreamWriter(out);

现在,扩展 SAX DefaultHandler:

startDocument(){
writer.writeStartDocument("UTF-8", "1.0");
}

public void startElement(String namespaceURI, String localName,
String qName, Attributes atts) {

writer.writeStartElement(namespaceURI, localName);
for(int i=0; i<atts.getLength(); i++){
writer.writeAttribute(atts.getQName(i), atts.getValue(i));
}
}

public void endElement(String uri, localName, qName){
writer.writeEndElement();
}

关于java - 如何更改 XML 文件中某些元素和属性的值 [Java]?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4046932/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com