美文网首页
读取配置文件--java.util.Properties方式

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

作者: 海的那一边 | 来源:发表于2017-09-01 17:41 被阅读98次

写在前面:
程序中有时需要把一些用户可能要修改的数据写到配置文件中,然后在使用时读取这个数据,这里记录下自己使用的读取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");

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

相关文章

网友评论

      本文标题:读取配置文件--java.util.Properties方式

      本文链接:https://www.haomeiwen.com/subject/ioskjxtx.html