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"));
    }
}

java之xml文件解析与properties文件解析

 解析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文件

java之xml文件解析与properties文件解析

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);

        }
    }
}