要从类路径加载属性文件,我们可以简单地做:
InputStream inputStream = CommonUtils.class.getClassLoader().getResourceAsStream("com/abc/resources/config.properties");
prop.load(inputStream);
完成上述步骤后,所有属性均已正确加载。但是我怎样才能改变一个属性并将它保存回同一个文件呢? (下面不起作用)
OutputStream outputStream = new FileOutputStream("com/abc/resources/config.properties");
prop.setProperty(key, value);
prop.store(outputStream, null);
最佳答案
您不能写入以这种方式加载的资源。
我建议,当您的应用程序首次启动时,它会从 jar 文件加载默认属性并保存在一个众所周知的位置。然后,当应用程序启动时,它会从该位置读取属性。 This stack overflow question有更多关于如何以及在何处坚持的细节。
关于java - 如何将 Java 属性文件保存到类路径?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23919485/