章节六、3-读取Properties属性文件

一、如何读取Properties文件
1、创建一个名为ReadingProperties的类

2、创建一个.propertise属性的文件,创建的方式参考“二”中步骤

3、写入如下代码

package introduction8;

import java.io.FileInputStream;
import java.nio.file.Path;
import java.util.Properties;

//读取java中的属性文件,java中有一个写好的类,名叫Properties
/*Properties是一个配置文件,主要作用是通过修改配置文件可以方便的修改代码中的参数,
 * 不用改.class文件就可以灵活的变更参数,.java文件编译为.class文件以后,无法通过
 * 反编译找到原文件,那么,在java类中某个参数变更就很难灵活的实现参数的修改,当如果通过
 * properties就可以实现修改,减少代码的维护成本,提高开发的效率。
 */
public class ReadingProperties {

    public static void main(String[] args) {
    //后面的路径为创建的.properties属性的文件路径
        String path = "C:\Users\Administrator\eclipse-workspace\JavaTutorial\src\introduction8\test.propertise";
    //创建一个Properties对象
        Properties prop = new Properties();
    //需要用到文件读取流这个类,创建一个文件读取流对象,用于读取本地文件中的字节数据
        FileInputStream fs = new FileInputStream(path);
    }

}

在eclipse中下面的代码会出现异常,自检未通过:

鼠标移动到报错的代码上显示如下

此处直接抛出异常

4、终极代码:

package introduction8;

import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.nio.file.Path;
import java.util.Properties;
import java.util.jar.Attributes.Name;

//读取java中的属性文件,java中有一个写好的类,名叫Properties
/*Properties是一个配置文件,主要作用是通过修改配置文件可以方便的修改代码中的参数,
 * 不用改.class文件就可以灵活的变更参数,.java文件编译为.class文件以后,无法通过
 * 反编译找到原文件,那么,在java类中某个参数变更就很难灵活的实现参数的修改,当如果通过
 * properties就可以实现修改,减少代码的维护成本,提高开发的效率。
 */
public class ReadingProperties {

    public static void main(String[] args) throws IOException {
    //后面的路径为创建的.properties属性的文件路径
        String path = "C:\Users\Administrator\eclipse-workspace\JavaTutorial\src\introduction8\test.propertise";
    //创建一个Properties对象
        Properties prop = new Properties();
    //需要用到文件读取流这个类,创建一个文件读取流对象,用于读取本地文件中的字节数据
        FileInputStream fs = new FileInputStream(path);
    /*输入流中读取属性列表,读取InputStream文件,上面创建对象时将异常直接抛出,
         因此此处也会报异常,直接抛出异常
    */
        prop.load(fs);
    //用Properties中的getProperty方法在file中用指定的键,搜索值
        System.out.println(prop.getProperty("name"));
        System.out.println(prop.getProperty("course"));

    }

}

打印结果为,成功读取到属性文件中的值:

二、创建FIile文件

eclipse中创建一个文件:File---》NEW---》File---》在File name中输入文件名(文件名必须用.propertise,否则读取会出错)为后缀,本文演示中取名为test.propertise---》Finish。

三、如何定义FIile文件

使用键值对的形式

左边是键,右边是值,代码中如果想访问java这个值的话,直接访问course就可以了,我们也可以很方便的将java这个值改变,列如改为Python,那么代码在调用course这个键时,访问就会由java变为Python这个值,这样就能灵活的修改参数值了。

原文地址:https://www.cnblogs.com/luohuasheng/p/9663168.html