zoukankan      html  css  js  c++  java
  • 章节六、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这个值,这样就能灵活的修改参数值了。

  • 相关阅读:
    Mysql存储过程和函数
    python反编译chm文件并生成pdf文件
    python转换html到pdf文件
    python获取系统开机时间
    OpenSL ES: 利用OpenSL ES实现录音功能
    android: 根据文件uri 获取文件名
    Java: InputStream转化为byte数组
    Linux: 查看二进制文件
    Vim: 回到上次编辑的位置
    LayoutInflate: Avoid passing null as the view root
  • 原文地址:https://www.cnblogs.com/luohuasheng/p/9663168.html
Copyright © 2011-2022 走看看