簡體   English   中英

Java Properties 類加載方法的西班牙語編碼問題

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM