我是java应用程序的新开发人员。我想修改XML文件节点值。我使用了一个xml文件进行修改,如下所示
<staff id="2">
<firstname>yong</firstname>
<lastname>mook kim</lastname>
<nickname>mkyong</nickname>
<salary>2000000</salary>
<age>28</age>
</staff>
在上面的xml中我想将工资值更改为345375.对于此修改,我编写了如下代码
try{
DocumentBuilderFactory docFactory = DocumentBuilderFactory.newInstance();
DocumentBuilder docBuilder = docFactory.newDocumentBuilder();
Document doc = docBuilder.parse(new File("/sdcard/myxml.xml"));
//Get the staff element by tag name directly
Node nodes = doc.getElementsByTagName("staff").item(0);
//loop the staff child node
NodeList list = nodes.getChildNodes();
for (int i =0; i<list.getLength();i++){
Node node = list.item(i);
//get the salary element, and update the value
if("salary".equals(node.getNodeName())){
node.setNodeValue("345375");
}
}
}
catch (Exception e) {
e.printStackTrace();
}
如果我以这种方式使用不修改薪水的价值。
如何修改XML节点值?
答案 0 :(得分:0)
首先,您必须意识到node.setValue()
正在修改存储在内存中的表示。知道了,那么你只需要弄清楚如何将输出写入磁盘。有关示例,请参阅this。
答案 1 :(得分:0)
node.Text = "Enter your value here"; //This will work