zoukankan      html  css  js  c++  java
  • java 处理xml格式数据

     1.单个xml文件

    package lia.meetlucene;
    
    import java.io.*;
    import javax.xml.parsers.DocumentBuilder;
    import javax.xml.parsers.DocumentBuilderFactory;
    import org.w3c.dom.Document;
    import org.w3c.dom.Element;
    import org.w3c.dom.NodeList;
    
    public class XMLReaderTest1 {
    
        static void Dfs(NodeList nodecur) {
    
            for (int j = 0; j < nodecur.getLength(); j++) {
    
                if ("timestamp".equals(nodecur.item(j).getNodeName())) // 输出pass
                    System.out.println("时间: " + nodecur.item(j).getTextContent());
                /*
                 * else if ("origtext".equals(nodecur.item(j).getNodeName()))
                 * System.out.println("原微博: " + nodecur.item(j).getTextContent());
                 */
                else if ("text".equals(nodecur.item(j).getNodeName())) // 输出code
                    System.out.println("微博: " + nodecur.item(j).getTextContent());
                NodeList childNodes = nodecur.item(j).getChildNodes();
                Dfs(childNodes);
            }
        }
    
        public static void main(String args[]) {
            Element element = null;
            // 可以使用绝对路劲
            File f = new File(
                    "C:/Users/Administrator/Desktop/xdj/tengxun/a_46o41785/2014-05-08 09.26.05.xml");
            // documentBuilder为抽象不能直接实例化(将XML文件转换为DOM文件)
            DocumentBuilder db = null;
            DocumentBuilderFactory dbf = null;
            try {
                // 返回documentBuilderFactory对象
                dbf = DocumentBuilderFactory.newInstance();
                // 返回db对象用documentBuilderFatory对象获得返回documentBuildr对象
                db = dbf.newDocumentBuilder();
                // 得到一个DOM并返回给document对象
                Document dt = db.parse(f);
                // 得到一个elment根元素
                element = dt.getDocumentElement();
                // 获得根节点
                System.out.println("根元素:" + element.getNodeName());
                // 获得根元素下的子节点
                
                Dfs(element.getChildNodes());
            } catch (Exception e) {
                e.printStackTrace();
            }
        }
    }
    View Code

    2.多文件夹里的xml文件

    package lia.meetlucene;
    
    import java.io.File;
    import java.io.IOException;
    import java.util.LinkedList;
    import javax.xml.parsers.DocumentBuilder;
    import javax.xml.parsers.DocumentBuilderFactory;
    import org.w3c.dom.Document;
    import org.w3c.dom.Element;
    import org.w3c.dom.NodeList;
    
    public class Unicode1 {
    
        static void Dfs(NodeList nodecur) {
            for (int j = 0; j < nodecur.getLength(); j++) {
    
                if ("timestamp".equals(nodecur.item(j).getNodeName())) // 输出pass
                    System.out.println("时间: " + nodecur.item(j).getTextContent());
                /*
                 * else if ("origtext".equals(nodecur.item(j).getNodeName()))
                 * System.out.println("原微博: " + nodecur.item(j).getTextContent());
                 */
                else if ("text".equals(nodecur.item(j).getNodeName())) // 输出code
                    System.out.println("微博: " + nodecur.item(j).getTextContent());
                NodeList childNodes = nodecur.item(j).getChildNodes();
                Dfs(childNodes);
            }
        }
    
        public static void main(String[] args) throws IOException {
    
            long a = System.currentTimeMillis();
    
            // String dataDir ="C:/Users/Administrator/Desktop/xdj/tengxun/A__Vae";
            File dir = new File("C:/Users/Administrator/Desktop/xdj/tengxun");
            LinkedList list = new LinkedList();
            File file[] = dir.listFiles();
            for (int i = 0; i < file.length; i++) {
                if (file[i].isDirectory())
                    list.add(file[i]);
            }
            File tmp;
            int num = 0;
            while (!list.isEmpty()) {
                tmp = (File) list.removeFirst();
                file = tmp.listFiles();
                for (int i = 0; i < file.length; i++) {
                    System.out.println(file[i].getAbsolutePath());
    
                    Element element = null;
                    // documentBuilder为抽象不能直接实例化(将XML文件转换为DOM文件)
                    DocumentBuilder db = null;
                    DocumentBuilderFactory dbf = null;
                    try {
                        // 返回documentBuilderFactory对象
                        dbf = DocumentBuilderFactory.newInstance();
                        // 返回db对象用documentBuilderFatory对象获得返回documentBuildr对象
                        db = dbf.newDocumentBuilder();
                        // 得到一个DOM并返回给document对象
                        Document dt = db.parse(file[i]);
                        // 得到一个elment根元素
                        element = dt.getDocumentElement();
                        // 获得根节点
                        System.out.println("根元素:" + element.getNodeName());
                        // 获得根元素下的子节点
    
                        Dfs(element.getChildNodes());
    
                        num++;
                    } catch (Exception e) {
                        e.printStackTrace();
                    }
                }
    
                System.out.println(System.currentTimeMillis() - a + "    " + num);
            }
        }
    }
    View Code
  • 相关阅读:
    KVM虚拟化学习笔记系列文章列表(转)
    centos 6.5安装docker报错(查看报错详细信息--推荐)
    利用JMX统计远程JAVA进程的CPU和Memory---jVM managerment API
    OpenJDK和JDK区别
    docker sshd image problem, session required pam_loginuid.so, cann't login
    ssh-keygen
    优秀的软件测试人员必需具备的素质
    java基础篇---I/O技术
    jstl long类型数据转换为日期格式
    apache-hadoop-1.2.1、hbase、hive、mahout、nutch、solr安装教程
  • 原文地址:https://www.cnblogs.com/XDJjy/p/4437236.html
Copyright © 2011-2022 走看看