首先写自己最常用的实现,如下所示:
然后是学院派,使用六种方法读取,如下:
1.使用java.util.Properties类的load()方法示例:InputStreamin=lnewBufferedInputStream(newFileInputStream(name)); Propertiesp=newProperties();p.load(in);
2.使用java.util.ResourceBundle类的getBundle()方法示例:ResourceBundlerb=ResourceBundle.getBundle(name,Locale.getDefault());
3.使用java.util.PropertyResourceBundle类的构造函数示例:InputStreamin=newBufferedInputStream(newFileInputStream(name)); ResourceBundlerb=newPropertyResourceBundle(in);
4.使用class变量的 getResourceAsStream()方法示例:InputStreamin=JProperties.class.getResourceAsStream(name); Propertiesp=newProperties();p.load(in);
5.使用 class.getClassLoader()所得到的java.lang.ClassLoader的getResourceAsStream()方法示例:InputStreamin=JProperties.class.getClassLoader().getResourceAsStream(name); Propertiesp=newProperties();p.load(in);
6.使用 java.lang.ClassLoader类的getSystemResourceAsStream()静态方法示例:InputStreamin=ClassLoader.getSystemResourceAsStream(name); Propertiesp=newProperties();p.load(in);
补充
Servlet中可以使用javax.servlet.ServletContext的getResourceAsStream()方法示例:InputStreamin=context.getResourceAsStream(path); Propertiesp=newProperties();p.load(in);
再转发一个别人的例子,包括读取以及写入properties文件,比较全,如下: