读取配置文件--java.util.Properties方式

写在前面:
程序中有时需要把一些用户可能要修改的数据写到配置文件中,然后在使用时读取这个数据,这里记录下自己使用的读取properties配置文件这个方法。
首先参考文章:http://www.cnblogs.com/shang20017/archive/2009/04/16/1437271.html
里面提供了几种方法,我挑了其中一个。至于为什么不用xml,实不相瞒,因为我目前不懂这个东西,哈哈哈。

1.configAndroid.properties和ReadConfigAndroid的文件目录:

QQ20170901-172158@2x.png

2.贴个代码

configAndroid.properties:

AUTOMATIONNAME=Appium
DEVICENAME=LS
PLATFORMNAME=Android
PLATFORMVERSION=6.0
UDID=2a20b4fd
APPPACKAGE=com.apricotforest.dossier.plus
APPACTIVITY=com.apricotforest.dossier.medicalrecord.activity.main.MainLoadingActivity
UNICODEKEYBOARD=True
RESETKEYBOARD=True
NOSIGN=True
NEWCOMMANDTIMEOUT=30

ReadConfigAndroid:

package com.xingshulin.util;

import java.io.IOException;
import java.io.InputStream;
import java.util.Properties;

public class ReadConfigAndroid {
    public String AUTOMATIONNAME;
    public String DEVICENAME;
    public String PLATFORMNAME;
    public String PLATFORMVERSION;
    public String UDID;
    public String APPPACKAGE;
    public String APPACTIVITY;
    public String UNICODEKEYBOARD;
    public String RESETKEYBOARD;
    public String NOSIGN;
    public String NEWCOMMANDTIMEOUT;


    public void getConfig() {
        InputStream inputStream = this.getClass().getResourceAsStream("configAndroid.properties");
        Properties p = new Properties();

        try {
            p.load(inputStream);
        } catch (IOException e1) {
            e1.printStackTrace();
        }

        AUTOMATIONNAME = p.getProperty("AUTOMATIONNAME");
        DEVICENAME = p.getProperty("DEVICENAME");
        PLATFORMNAME = p.getProperty("PLATFORMNAME");
        PLATFORMVERSION = p.getProperty("PLATFORMVERSION");
        UDID = p.getProperty("UDID");
        APPPACKAGE = p.getProperty("APPPACKAGE");
        APPACTIVITY = p.getProperty("APPACTIVITY");
        UNICODEKEYBOARD = p.getProperty("UNICODEKEYBOARD");
        RESETKEYBOARD = p.getProperty("RESETKEYBOARD");
        NOSIGN = p.getProperty("NOSIGN");
        NEWCOMMANDTIMEOUT = p.getProperty("NEWCOMMANDTIMEOUT");
        

    }

}

其中,原文中使用的是

this.getClass().getClassLoader().getResourceAsStream("ipConfig.properties"); 

但是我用的时候报错,后来百度了下,修改成下面这个就好了

this.getClass().getResourceAsStream("configAndroid.properties");

然后就可以使用啦,啦啦啦。。。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容