我正嘗試讀取.properties文件中多種不同的語言,向它們添加新條目,排序並打印迴文件。我的編碼爲UTF-8,並且適用於除俄文之外的所有當前語言。在閱讀文件時,我會從俄羅斯文件中獲得所有問號。當它打印出來時,它有很多正確的文本,但在這裏和那裏都有隨機的問號。這是我在文件中閱讀的代碼。閱讀.properties文件用俄語寫的
Properties translation = new Properties() {
private static final long serialVersionUID = 1L;
@Override
public synchronized Enumeration<Object> keys() {
return Collections.enumeration(new TreeSet<Object>(super.keySet()));
}
}
byte[] readIn = Files.readAllBytes(Paths.get(filePath));
String replacer = new String(readIn).replace("\\","\\\\");
translation.load(new InputStreamReader(new ByteArrayInputStream(replacer.getBytes()),"UTF-8"));
這看起來像在打印迴文件時修復了它。雖然如果打印到system.out而不是回到文件中,它仍然會顯示問號。奇。 –
您的控制檯或其字體可能無法顯示俄語字符。 –