3 回答

TA貢獻1943條經(jīng)驗 獲得超7個贊
屬性文件根據(jù)定義為ISO-8859-1-請參閱文檔以獲取Properties類。
Spring有一個替換項,可以使用加載指定的編碼PropertiesFactoryBean。
編輯:正如Laurence在評論中指出的那樣,Java 1.6引入了for的重載,load并store采用Reader/ Writer。這意味著您可以使用所需的任何編碼為文件創(chuàng)建閱讀器,并將其傳遞給load。遺憾的是FileReader 仍然沒有讓你指定在構(gòu)造函數(shù)(AARGH)的編碼,所以你會堅持使用鏈接FileInputStream和InputStreamReader在一起。但是,它將起作用。
例如,要使用UTF-8讀取文件:
Properties properties = new Properties();
InputStream inputStream = new FileInputStream("path/to/file");
try {
Reader reader = new InputStreamReader(inputStream, "UTF-8");
try {
properties.load(reader);
} finally {
reader.close();
}
} finally {
inputStream.close();
添加回答
舉報