根据XPATH去查看修改xml文件节点的内容
首先给出xml文件解析的路径,然后去读取节点的内容。
package com.inetpsa.eqc.threads; import java.util.List; import java.io.File; import java.io.FileWriter; import java.io.IOException; import java.util.Iterator; import javax.xml.parsers.ParserConfigurationException; import org.apache.commons.lang.StringEscapeUtils; import org.apache.commons.lang.StringUtils; import org.dom4j.DocumentException; import org.dom4j.Element; import org.dom4j.Document; import org.dom4j.io.OutputFormat; import org.dom4j.io.SAXReader; import org.dom4j.io.XMLWriter; import org.w3c.dom.NodeList; import org.xml.sax.SAXException; public class TestFile { public static void main(String[] args) throws SAXException, IOException, DocumentException { // TODO Auto-generated method stub SAXReader reader = new SAXReader(); org.dom4j.Document verbatimDoc = reader .read(new File("C:\\Users\\E468264\\Desktop\\11\\AP_MX_APV_201605_NETEQC_verbatim - Copy.xml")); List list = verbatimDoc.selectNodes("/ENVELOPPE/BODY/INTERVIEW_LIST/INTERVIEW/VERBATIM_LIST/VERBATIM"); Iterator it = list.iterator(); while(it.hasNext()){ Element verbatimElement = (Element)it.next(); System.out.println(verbatimElement.getTextTrim()); System.out.println(StringUtils.escape(verbatimElement.getTextTrim())); verbatimElement.setText(StringEscapeUtils.escapeJava(verbatimElement.getTextTrim())); } try{ OutputFormat format = OutputFormat.createPrettyPrint(); XMLWriter writer = new XMLWriter(new FileWriter(new File("C:\\Users\\E468264\\Desktop\\11\\AP_MX_APV_201605_NETEQC_verbatim.xml")),format); writer.write(verbatimDoc); writer.close(); } catch(Exception e){ e.printStackTrace(); } // String s= "Sugerencias / Observaciones sobre el aspecto general del taller:Que fuese m\u00E1s amplia la \u00E1rea de recepci\u00F3n Comentarios sobre la relaci\u00F3n con el taller de servicio autorizado:Creo que este cuestionario empieza a ser tedioso|Deber\u00EDan hacer menos preguntas \uD83D\uDE10 Detalles de los aspectos que le gustaron en la \u00FAltima visita:La atenci\u00F3n del personal Detalles de los aspectos que le desagradaron en la \u00FAltima visita:Que labora m\u00E1s personal masculino|Pareciera que hay desigualdad de g\u00E9neros en la empresa"; // System.out.println(s.replaceAll ("/(\\\\u/w{4})", "")); //// System.out.println(s.replaceAll("/[\u0001-\uFFFF]","")); // // String [] aa = s.split("\\"); // System.out.println(aa.length); } }
通过setText方法去改写xml文件的内容,完了之后写回到文件中。