我是Java和XML的新手。 我需要使用Java程序来修改这个XML文件的一部分:用Java编辑XML文件
<?xml version="1.0" encoding="UTF-8"?>
<Traduction>
<Entrée>
<Word1>Word1</Word1>
<N1>0</N1>
<N2>0</N2>
<Word2>Word2</Word2>
</Entrée>
<Sortie>
<Word1>Word1</Word1>
<N1>0</N1>
<N2>0</N2>
<Word2>Word2</Word2>
</Sortie>
</Traduction>
我想利用这个代码在Eclipse:
try {
String filepath = "/home/user/Trad/ex1.xml";
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
DocumentBuilder builder = factory.newDocumentBuilder();
Document document = builder.parse(filepath);
Node Traduction = document.getChildNodes().item(0);
Node Sortie = Traduction.getChildNodes().item(1);
Sortie.getChildNodes().item(0).setTextContent("AAA");
Sortie.getChildNodes().item(1).setTextContent("001");
Sortie.getChildNodes().item(2).setTextContent("002");
Sortie.getChildNodes().item(3).setTextContent("BBB");
TransformerFactory transformerFactory = TransformerFactory.newInstance();
Transformer transformer = transformerFactory.newTransformer();
DOMSource source = new DOMSource(document);
StreamResult result = new StreamResult(new File(filepath));
transformer.transform(source, result);
}
catch (ParserConfigurationException pce) {
pce.printStackTrace();
}
catch (TransformerException tfe) {
tfe.printStackTrace();
}
catch (IOException ioe) {
ioe.printStackTrace();
}
catch (SAXException sae) {
sae.printStackTrace();
}
但我得到这样的结果,这不是我想:
<?xml version="1.0" encoding="UTF-8" standalone="no"?><Traduction>
<Entrée>AAA<Word1>001</Word1>002<N1>BBB</N1>
<N2>0</N2>
<Word2>Word2</Word2>
</Entrée>
<Sortie>
<Word1>Word1</Word1>
<N1>0</N1>
<N2>0</N2>
<Word2>Word2</Word2>
</Sortie>
</Traduction>
我想获得:
<?xml version="1.0" encoding="UTF-8"?>
<Traduction>
<Entrée>
<Word1>Word1</Word1>
<N1>0</N1>
<N2>0</N2>
<Word2>Word2</Word2>
</Entrée>
<Sortie>
<Word1>AAA</Word1>
<N1>001</N1>
<N2>002</N2>
<Word2>BBB</Word2>
</Sortie>
</Traduction>
我应该在Java代码中修改哪些内容才能获得此内容?
读关于Java命名约定。属性名称应该以小写字符开头 – Jens
好吧,我要解决这个问题。 – mpv1504