[英]Spanish language encoding issue with Java Properties class load method
我正在嘗試對西班牙語進行國際化編碼,並使用 Java Properties 類加載方法來填充它以將其傳遞給前端。
我嘗試使用 UTF-8 對其進行編碼,但仍然無法正確顯示重音字符。
import java.io.ByteArrayInputStream;
import java.io.IOException;
import java.nio.charset.Charset;
import java.util.Properties;
public class Message extends Properties {
public static void main(String[] args) throws IOException {
String spanish = "label=Sí";
Message messages = new Message();
messages.load(new ByteArrayInputStream(spanish.getBytes(Charset.forName("UTF-8"))));
System.out.println(messages.get("label"));
}
}
當我運行上面的代碼時,我得到的文本為“SÃ-”。 如何檢索與“Sí”相同的文本?
嘗試使用 ISO-8859-1 會得到預期的結果:
messages.load(new ByteArrayInputStream(spanish.getBytes(Charset.forName("ISO-8859-1"))));
更多關於 ISO-8859-1 的信息可以從這個鏈接獲得: https : //en.wikipedia.org/wiki/ISO/IEC_8859-1
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.