zoukankan      html  css  js  c++  java
  • java之xml文件解析与properties文件解析

    解析properties文件需要使用Properties 类,专门用来解析Properties 文件

    Properties properties = new Properties();

    File file = new File("log4j properties");

    //InputStream 是一个抽象类,不能new InputStream,但是可以创建一个子类的new FileInputStream(file)

    InputStream  inSrtream = new FileInputStream(file);

    properties.load(inStream);

    注意:

    1.load方法需要一个InputStream  字节流对象。此输入流对象必须已经包含了properties文件中的数据,

    所以创建此输入流的时候必须把此properties文件传进去。

    2.创建文件对象时,如何获取文件路径呢,一可以是使用绝对路径,二是使用相对路径,找不到的则抛出一个FileNotFoundException

    3.经过此方式,数据被加载到了properties对象中。

    package com.test01;
    
    import java.io.*;
    import java.util.Properties;
    
    public class propertiesDemo {
        public static void main(String[] args) throws IOException {
            String path= "log4j.properties";
            loadproperties(path);
        }
        public static void loadproperties(String path) throws IOException {
            Properties properties = new Properties();
            File file = new File(path);
            InputStream stream = new FileInputStream(file);
            properties.load(stream);
            System.out.println(properties.getProperty("log4j.rootLogger"));
        }
    }

     解析xml文件

    <?xml version="1.0 encoding=""utf-8"?>
    <
    students> <student number="1001"> <name>张三</name> <age>18</age> <gender></gender> </student> <student number="1002"> <name>李四</name> <age>28</age> <gender></gender> </student> <student number="1003"> <name>王五</name> <age>38</age> <gender></gender> </student> </students>

     dom4j解析技术,用来解析xml文件

    package com.test01;
    
    import org.dom4j.Document;
    import org.dom4j.DocumentException;
    import org.dom4j.Element;
    import org.dom4j.io.SAXReader;
    
    import java.io.File;
    import java.net.MalformedURLException;
    import java.util.List;
    
    public class xmlDemo {
        public static void main(String[] args) throws MalformedURLException, DocumentException{
            String path2 = "student.xml";
            parseXml(path2);
        }
        public static void parseXml(String path) throws MalformedURLException, DocumentException {
            //1.创建解析器SaxReader对象
            SAXReader saxReader = new SAXReader();
            //2.获取document对象,相当于文档对象
            Document document = saxReader.read(new File(path));
            //3.获取根元素
            Element root = document.getRootElement();
            //4.获取根元素下的子元素
            List<Element> students = root.elements("student");
            for(Element studentelement:students){
                Element nameelement = (Element) studentelement.elements("name");
                Element ageelement = (Element) studentelement.elements("age");
                Element genderelement = (Element) studentelement.elements("gender");
                String name = nameelement.getText();
                String age = ageelement.getText();
                String gender = genderelement.getText();
                System.out.println("name"+name+",age"+age+",gender"+gender);
    
            }
        }
    }
  • 相关阅读:
    快速学习javaSE基础4---面向对象的编程
    eclipse 小技巧,设置输入任何字母都有快捷提示.
    快速学习javaSE基础3-java必须了解的基本语法2(熟记)
    快速学习javaSE基础3-java必须了解的基本语法1(熟记)
    数据可视化之导入数据
    pandas读取Excel文件
    pandas进阶
    给定地球上两点的经纬度,求两点之间沿地球表面最短的弧线距离
    06异常
    05设计模式
  • 原文地址:https://www.cnblogs.com/zhaobobo001/p/14623413.html
Copyright © 2011-2022 走看看