在Java程序中获取配置文件的值,可以使用Java的Properties类或者配置文件的相关类库来实现。
首先将配置文件加载到Properties对象中,然后通过getProperty()方法获取配置项的值。
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStream;
import java.util.Properties;
public class ConfigReader {
public static void main(String[] args) {
Properties prop = new Properties();
InputStream input = null;
try {
input = new FileInputStream("config.properties");
prop.load(input);
String value = prop.getProperty("key");
System.out.println("Value: " + value);
} catch (IOException ex) {
ex.printStackTrace();
} finally {
if (input != null) {
try {
input.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
}
}
上述代码中的配置文件为"config.properties",其中包含了一个名为"key"的配置项。
除了使用Properties类,还可以使用Apache的Commons Configuration库等第三方库来读取配置文件。
使用Apache Commons Configuration库示例:
import org.apache.commons.configuration2.Configuration;
import org.apache.commons.configuration2.builder.FileBasedConfigurationBuilder;
import org.apache.commons.configuration2.builder.fluent.Parameters;
import org.apache.commons.configuration2.ex.ConfigurationException;
public class ConfigReader {
public static void main(String[] args) {
Parameters params = new Parameters();
FileBasedConfigurationBuilder<PropertiesConfiguration> builder =
new FileBasedConfigurationBuilder<>(PropertiesConfiguration.class)
.configure(params.properties()
.setFileName("config.properties"));
try {
Configuration config = builder.getConfiguration();
String value = config.getString("key");
System.out.println("Value: " + value);
} catch (ConfigurationException ex) {
ex.printStackTrace();
}
}
}
上述代码使用了Apache Commons Configuration库的PropertiesConfiguration类来读取配置文件。需要先创建一个FileBasedConfigurationBuilder对象,然后通过configure()方法指定配置文件的路径,最后通过getConfiguration()方法获取配置对象,并使用getString()方法获取具体配置项的值。