原因:編碼格式問題,java讀取properties文件默認使用的是ISO8859-1編碼
解決方法:按自己的項目需要轉成對應的編碼格式即可。
以下附簡單的java讀取properties代碼:
common.properties代碼:
#網站名稱
site=我的中文網站名稱
CP.java代碼:
import java.io.FileNotFoundException;
import java.io.IOException;
import java.util.Properties;
public class CP {
private static final String path = "config/common.properties";//從src的根目錄開始
private static final String encode = "UTF-8";//文件的編碼格式
private static Properties props = new Properties();
static {
try {
props.load(Thread.currentThread().getContextClassLoader()
.getResourceAsStream(path));
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
public static String getValue(String key) throws Exception {
return new String(props.getProperty(key).getBytes("ISO8859-1"), encode);
}
public static void updateProperties(String key, String value) {
props.setProperty(key, value);
}
public static void main(String[] args) throws Exception{
System.out.println("網站名稱:"+CP.getValue("site"));
}
}
