zoukankan      html  css  js  c++  java
  • 根据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 mu00E1s amplia la u00E1rea de recepciu00F3n Comentarios sobre la relaciu00F3n con el taller de servicio autorizado:Creo que este cuestionario empieza a ser tedioso|Deberu00EDan hacer menos preguntas uD83DuDE10 Detalles de los aspectos que le gustaron en la u00FAltima visita:La atenciu00F3n del personal Detalles de los aspectos que le desagradaron en la u00FAltima visita:Que labora mu00E1s personal masculino|Pareciera que hay desigualdad de gu00E9neros 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);
    
    
        }
    
    }
    View Code


    通过setText方法去改写xml文件的内容,完了之后写回到文件中。

  • 相关阅读:
    mysql 行转列 列转行
    JAVA中使用JSch库实现SSH功能
    sqlmap详解
    Max+Decode的妙用.(紀錄分組).
    apache mina sshd ,纯java的ssh工具包
    Nginx 日志分析及性能排查
    PHP在Apache中两种工作方式的区别(CGI模式、Apache 模块DLL)
    如何将本地做好的网站挂到服务器上
    Drupal
    程序员的十种级别,
  • 原文地址:https://www.cnblogs.com/niceofday/p/5604445.html
Copyright © 2011-2022 走看看