Properties文件相关
最近遇到两问题:
1.Properties文件中不能写中文,写了保存不了;
2.Properties文件根本就不能修改,不管写中文还是英文。
原来要在myEclipse设置Properties文件的编码格式,默认properties文件存储是用ISO-8859-1编码,通过在window-->Preferences-->Gneral-->Content Types-->Text-->Java Properties Files 更改设置为utf-8,然后“update”,最后就可以修改保存中文了。虽然存储是按照utf-8编码,进行读取Properties文件的时候,还是按照ISO-8859-1来读取的,所以,当读取的某个字符串时,需对其重新编码(str还要对此字符创进行重新编码:str = new String(str.getBytes("ISO-8859-1"),"utf-8");这样就可以得到正常的value值了。
使用J2SE API读取Properties文件的六种方法
1.使用java.util.Properties类的load()方法
示例:
InputStream in = lnew BufferedInputStream(new FileInputStream(name));Properties p = new Properties();p.load(in);
ResourceBundle rb = ResourceBundle.getBundle(name, Locale.getDefault());
InputStream in = new BufferedInputStream(new FileInputStream(name));ResourceBundle rb = new PropertyResourceBundle(in);
InputStream in = JProperties.class.getResourceAsStream(name);Properties p = new Properties();p.load(in);
InputStream in = JProperties.class.getClassLoader().getResourceAsStream(name);Properties p = new Properties();p.load(in);
InputStream in = ClassLoader.getSystemResourceAsStream(name);Properties p = new Properties();p.load(in);
InputStream in = context.getResourceAsStream(path);Properties p = new Properties();p.load(in);