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文件的内容,完了之后写回到文件中。

  • 相关阅读:
    用属性封装 Session 及 VIewState 的存取
    正则表达式的一些重要概念
    通用权限的思路。只是一个简单的思路。
    IBATISNETNET 1.3 开发指南系列文章
    Serializable===net对象序列化
    使用Asp.Net构建安全网站
    用汽车售票系统谈数据库结构设计
    图文描述Vs2005制作WEB应用程序安装包的方法[E8.Net正式用户可以找我们获取全部代码参考]
    《基于.NET平台的分层架构实战》系列文章索引
    javascript中outerHTML innerHTML innerTEXT 三者的区别
  • 原文地址:https://www.cnblogs.com/niceofday/p/5604445.html
Copyright © 2011-2022 走看看