java如何读取.properties文件

来源:互联网 发布:免费的cms系统 编辑:程序博客网 时间:2024/04/29 04:51
CSDN上学习总结:首先介绍读取.properties文件的六种方法

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

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

3.使用java.lang.ClassLoader类的getSystemResourceAsStream()方法
例如:InputStream in = ClassLoader.getSystemResourceAsStream(name);
Properties p = new Properties();
p.load(in);

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

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

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

下面再做一些补充说明:
1.如果用servlet开发还可以使用javax.servlet.ServletContext的getResourceAsStream()方法
例如:InputStream in = context.getResourceAsStream(path);
Properties p = new Properties();
p.load(in);

2.在将工程打成jar包之后里面的读取.properties文件的程序可能出错,具体是由于.properties文件放置以及寻找路径不对造成的。可以按以下规制调用上面的方法:“
properties的读取方法受到文件放置的位置的影响。当properties位于jar包内部时,使用法三和法四,当properties位于jar包外部时,使用法一,同时将java启动脚本放在jar包的同一目录下面或者在同一目录下启动java程序。 ”