【问题标题】:It doesn't load all the data from .properties file它不会从 .properties 文件中加载所有数据
【发布时间】:2019-05-15 15:15:26
【问题描述】:

prop.getProperty(); 仅加载某些数据,如果我添加新内容或更改 .properties 文件中的字符串名称和代码,它将不会加载它。

我正在尝试从属性文件中加载一些数据以将其包含在capability.setCapability

但问题是加载了一些数据,有些是空的,我已经尝试了所有方法,我想知道.properties 文件可以处理多少个变量是否有任何限制?

myData.properties 文件

pinCode=123456

osname=Android 9

activationCode=13412741 39313106

user=user123456

device=Android Emulator

name=G5 SE

代码

System.out.println(prop.getProperty("name"));

System.out.println(prop.getProperty("user"));

System.out.println(prop.getProperty("device"));

System.out.println(prop.getProperty("osname"));

System.out.println(prop.getProperty("activationCode"));

System.out.println(prop.getProperty("pinCode"));

输出

null
user123456
Android Emulator
null
13412741 39313106
123456

现在应该打印出“name”、“user”、“device”、“activationCode”、“pinCode”和“osname”吧?

但它只打印出“user”、“activationCode”、“pinCode”和“device”,我得到“name”和“osname”为空。

请注意,如果我在属性文件和代码中更改字符串的名称,它将无法正常工作...

例如,如果我将“pinCode”更改为“pin”或“code”,它就不起作用。

请帮帮忙,这让我死了。

【问题讨论】:

  • 您能否分享加载属性的代码,因为这可能是问题所在。属性的数量没有限制(据我所知)。并且可能是愚蠢的问题:您绝对确定您正在加载正确的文件吗?

标签: java selenium intellij-idea properties appium


【解决方案1】:

您可能没有加载正确的文件

一个简单的测试是:

路径

src\test\java\Test.java
src\test\resources\myData.properties

myData.properties

pinCode=123456
osname=Android 9
activationCode=13412741 39313106
user=user123456
device=Android Emulator
name=G5 SE

测试

    @Test
    public void testProp() throws IOException {
        Properties prop = new Properties();

        ClassLoader classLoader = getClass().getClassLoader();
        File file = new File(Objects.requireNonNull(classLoader.getResource("myData.properties")).getFile());

        prop.load(new FileInputStream(file));

        System.out.println(prop.getProperty("name"));
        System.out.println(prop.getProperty("user"));
        System.out.println(prop.getProperty("device"));
        System.out.println(prop.getProperty("osname"));
        System.out.println(prop.getProperty("activationCode"));
        System.out.println(prop.getProperty("pinCode"));
    }

输出

G5 SE
user123456
Android Emulator
Android 9
13412741 39313106
123456

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-09-30
    • 1970-01-01
    • 2011-12-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多