7
SDカードから既存のXMLファイルのノードの値を編集します。例えば既存のXMLファイルのノードの値をSDカードから編集して元に戻す方法は?
私は海の旅にマウンテンの旅からRouteName
の値を編集したい場合。
<Trip>
<RouteID>12345</RouteID>
<RouteName>Mountain Trip</RouteName>
</Trip>
次のコードを使用しようとしましたが、SDカードのXMLファイルには影響しません。
try {
DocumentBuilderFactory docFactory = DocumentBuilderFactory.newInstance();
DocumentBuilder docBuilder = docFactory.newDocumentBuilder();
Document doc = docBuilder.parse(
new File(Environment.getExternalStorageDirectory()+"/Trip/"+tripID+".trip"));
Node nodes = doc.getElementsByTagName("RouteName").item(0);
// newname is String variable which retrives value from edittext
nodes.setNodeValue(newname);
TransformerFactory factory = TransformerFactory.newInstance();
Transformer transformer = factory.newTransformer();
DOMSource source = new DOMSource(doc);
StreamResult result = new StreamResult(
new File(Environment.getExternalStorageDirectory()+"/Trip/"+tripID+".trip"));
transformer.transform(source, result);
} catch (Exception e) {
e.printStackTrace();
}
なぜSDカードのXMLファイルが更新されないのですか?