gpt4 book ai didi

java - 如何在android中的xml中附加标签?以及如何保存该 xml 文件?

转载 作者:塔克拉玛干 更新时间:2023-11-02 20:10:01 28 4
gpt4 key购买 nike

我想在 xml 文件中附加一个带有一些具有这些值的属性的新标签,并通过我的应用程序保存该 xml 文件。我已经编写了一种方法,用于将新标签作为子标签附加到 xml 文件,该文件在 sdcard 中可用android emulator.the following method for append a new tag 如下

   public void appendTag(){

try{

DocumentBuilderFactory docBuilderFactory = DocumentBuilderFactory.newInstance();
DocumentBuilder docBuilder = docBuilderFactory.newDocumentBuilder();
Document doc = docBuilder.parse (new File("/sdcard/sample.xml"));

Node node = doc.getElementsByTagName("earth").item(0);

//append a new node to earth
Element newelmnt = doc.createElement("new");
newelmnt.appendChild(doc.createTextNode("this is a text"));
node.appendChild(newelmnt);


}
catch (Exception e) {
e.printStackTrace();
}

}

执行此方法后,我无法在 xml 文件中找到新标签。

请问有谁能帮忙说明如何在 xml 文件中添加新标签作为子标签以及如何保存修改吗?

如果我使用 TransformerFactory,我会收到错误消息 错误/AndroidRuntime(13479): java.lang.VerifyError: com.sample.xmlapp.DOMClass我使用如下

     TransformerFactory factory = TransformerFactory.newInstance();
Transformer transformer = factory.newTransformer();

DOMSource source = new DOMSource(doc);
StreamResult result = new StreamResult(new File("/sdcard/sample.xml"));
transformer.transform(source, result);

最佳答案

您在内存中的文档将被更改,但您需要将其重新写入文件。

尝试添加这个以再次将文档写入文件:

TransformerFactory factory = TransformerFactory.newInstance();
Transformer transformer = factory.newTransformer();

DOMSource source = new DOMSource(doc);
StreamResult result = new StreamResult(new File("/sdcard/sample.xml"));
transformer.transform(source, result);

关于java - 如何在android中的xml中附加标签?以及如何保存该 xml 文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6606799/

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