JAVA 操作 properties 配置文件

怎甘沉沦 提交于 2020-12-26 06:45:29

一、properties配置文件简介

    Java中有个比较重要的类Properties(Java.util.Properties),主要用于读取Java的配置文件,各种语言都有自己所支持的配置文件,配置文件中很多变量是经常改变的,这样做也是为了方便用户,让用户能够脱离程序本身去修改相关的变量设置。像Python支持的配置文件是.ini文件,同样,它也有自己读取配置文件的类ConfigParse,方便程序员或用户通过该类的方法来修改.ini配置文件。在Java中,其配置文件常为.properties文件,格式为文本文件,文件的内容的格式是“键=值”的格式,文本注释信息可以用"#"来注释。在properties文件中,可以用井号"#"来作注释:   

userLocate=name>email
passwordLocate=name>password
btnLocate=classname>moco-btn-red

    由于properties文件在Java中操作便利,因此编程中经常会用到。

 

二、Java的Properties类

    属性映射(property map):是一种存储键/值对的数据结构。属性映射经常被用来存放配置信息。

    它有三个特性:

      1.键和值都是字符串;

      2.键/值对可以很容易地写入文件或从文件读出;

      3.用二级表存放默认值

    实现属性映射的Java类被称为Properties(Java.util.Properties),此类是Java中比较重要的类,主要用于读取Java的配置文件,各种语言都有自己所支持的配置文件,配置文件中很多变量是经常改变的,这样做也是为了方便用户,让用户能够脱离程序本身去修改相关的变量设置。

    它提供了几个主要的方法:

      1. getProperty ( String key):用指定的键在此属性列表中搜索属性。也就是通过参数 key ,得到 key 所对应的 value;

      2. load ( InputStream inStream):从输入流中读取属性列表(键和元素对)。通过对指定的文件(比如说上面的 test.properties 文件)进行装载来获取该文件中的所有键 - 值对。以供 getProperty ( String key) 来搜索;

      3. setProperty ( String key, String value) :调用 Hashtable 的方法 put 。他通过调用基类的put方法来设置 键 - 值对;

      4. store ( OutputStream out, String comments):以适合使用 load 方法加载到 Properties 表中的格式,将此 Properties 表中的属性列表(键和元素对)写入输出流。与 load 方法相反,该方法将键 - 值对写入到指定的文件中

      5. clear ():清除所有装载的 键 - 值对。该方法在基类中提供;

三、Java读取Properties文件

   使用java.util.Properties类的load()方法:

package com.company;

import java.io.BufferedInputStream;
import java.io.FileInputStream;
import java.io.InputStream;
import java.util.Properties;

public class ProUtil {
    public void readPro() throws Exception{
        Properties prop = new Properties();
        FileInputStream proPath = new FileInputStream("E:\\SeleniumTestcase\\01study\\test\\src\\test.properties");//填写properties在计算机的本地绝对路径,读取配置文件
        InputStream in = new BufferedInputStream(proPath);//将读取出来的配置文件放到缓存中
        prop.load(in); //加载配置文件
        String a = prop.getProperty("userLocate"); //从配置文件中获取userLocate的值
        System.out.println(a);
    }

    public static void main(String[] args) throws Exception{
        ProUtil pro = new ProUtil();
        pro.readPro();
    }
}

     本次运行的打印结果为: 

name>email

 

    关于java读取配置文件的6种方式,具体可参考技术博客:https://blog.csdn.net/Senton/article/details/4083127

 

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!