我的主要功能使用示例代码中给出的一组硬编码参数。 目标:我想要一个更清晰的代码,而不是在main中对这些值进行硬编码。 问题:有没有办法在一个单独的文件中定义所有这些参数,如配置文件并启用对main的访问?任何想要更改值的人都需要修改参数文件。如果有更好的方法来处理目标,请提出建议。
public class Sample {
public static void main(String[] arg) throws Exception {
BufferedReader File = new BufferedReader(new FileReader("myfile.txt"));
// parameter list
String Parameter_1 = "Value_1";
String Parameter_2 = "Value_2";
.......
//Function code
}
答案 0 :(得分:6)
查看Java属性文件;您可以使用类java.util.Properties
轻松加载(并保存)它们。
属性文件是包含键值对的文本文件,例如:
Parameter_1=Value_1
Parameter_2=Value_2
加载属性文件非常简单:
Properties props = new Properties();
InputStream in = new FileInputStream("config.properties");
props.load(in);
in.close();
然后你可以得到值:
String Parameter_1 = props.get("Parameter_1");
答案 1 :(得分:1)
使用Properties对象:
Properties prop = new Properties();
try {
//load a properties file
prop.load(new FileInputStream("config.properties"));
//get the property value and print it out
System.out.println(prop.getProperty("Value_1"));
System.out.println(prop.getProperty("Value_2"));
System.out.println(prop.getProperty("Value_3"));
} catch (IOException ex) {
ex.printStackTrace();
}
答案 2 :(得分:0)
Preferences API是首选的方式,优于属性,至少从Java 1.4开始。其他方法与偏好之间实际上有comparison。