您的位置:首页 > 编程语言 > Java开发

java 读取properties配置文件

2016-01-19 19:52 447 查看
先贴上自己的实例代码:

     Properties config = new Properties();
InputStream in;
try {
in = Properties.class.getResourceAsStream("/fs.properties");
config.load(in);
System.out.println(config.getProperty("s3ObjectPrefix"));
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}


注意:fs.properties文件在src直接目录下(即src目录下第一层),且需要在前面加上“/”.

now,贴上其他读取的方式(据说有6种):

使用J2SE API读取Properties文件的六种方法

1。使用java.util.Properties类的load()方法
示例: InputStream in = lnew BufferedInputStream(new FileInputStream(name));
Properties p = new Properties();
p.load(in);

2。使用java.util.ResourceBundle类的getBundle()方法
示例: ResourceBundle rb = ResourceBundle.getBundle(name, Locale.getDefault());

3。使用java.util.PropertyResourceBundle类的构造函数
示例: InputStream in = new BufferedInputStream(new FileInputStream(name));
ResourceBundle rb = new PropertyResourceBundle(in);

4。使用class变量的getResourceAsStream()方法
示例: InputStream in = JProperties.class.getResourceAsStream(name);
Properties p = new Properties();
p.load(in);

5。使用class.getClassLoader()所得到的java.lang.ClassLoader的getResourceAsStream()方法
示例: InputStream in = JProperties.class.getClassLoader().getResourceAsStream(name);
Properties p = new Properties();
p.load(in);

6。使用java.lang.ClassLoader类的getSystemResourceAsStream()静态方法
示例: InputStream in = ClassLoader.getSystemResourceAsStream(name);
Properties p = new Properties();
p.load(in);

补充

Servlet中可以使用javax.servlet.ServletContext的getResourceAsStream()方法
示例:InputStream in = context.getResourceAsStream(path);
Properties p = new Properties();
p.load(in);

说明:之前读配置文件都没成功,主要原因还是配置文件路径的问题!这个问题需要注意。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: