论坛首页 入门技术论坛

properties文件乱码解决方法

浏览 3402 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2009-08-06  
昨天发现java.util.Properties.load()方法时对双字节的编码都会乱码(日文乱码,中文乱码),又不想使用ative2ascii这种方式,因为properties文件是用户可修改的。

apache的commons-configuration.jar提供了一个比Properties更dai ren qin的工具类PropertiesConfiguration,可以指定文件的编码。

e.g.
cn=中国  

        PropertiesConfiguration pc = new PropertiesConfiguration();
        pc.setEncoding("utf8");
        pc.load("XXX.properties");
        System.out.println(pc.getString("cn"));


中国


ps.
java.util.Properties.load()方法也可以实现,不过麻烦点,它在加载时使用的是ISO-8859-1,所以在得到value后需要将其转成相应的字符集。
String value =new String (properties.getProperty("zn").getBytes("ISO-8859-1"),"utf8");

论坛首页 入门技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics