public class ReadAndEditXmlFile {
public static String queryXmlElementValue(String path, String name){
String res = "";
try {
String filepath = path;
File f = new File(filepath);
SAXReader saxReader = new SAXReader();
Document document = saxReader.read(f);
Element root = document.getRootElement();
Iterator itElem = root.elementIterator();
while(itElem.hasNext()){
Element sonElem = (Element) itElem.next();
if (sonElem.getName().equals(name)) {
res = sonElem.getText();
}
}
} catch (Exception e) {
e.printStackTrace();
}
return res;
}
public static boolean editXmlElementValue(String path, String name, String value){
boolean b = false;
try {
String filepath = path;
File f = new File(filepath);
SAXReader saxReader = new SAXReader();
Document document = saxReader.read(f);
Writer w = new FileWriter(f);
OutputFormat opf = OutputFormat.createPrettyPrint();
opf.setEncoding("UTF-8");
XMLWriter xw = new XMLWriter(w, opf);
Element root = document.getRootElement();
Iterator itElem = root.elementIterator();
while(itElem.hasNext()){
Element sonElem = (Element) itElem.next();
if (sonElem.getName().equals(name)) {
sonElem.setText(value);
}
}
xw.write(document);
xw.close();
return true;
} catch (Exception e) {
e.printStackTrace();
}
return b;
}
}