我正在尝试为国际化对西班牙语进行编码,并使用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í“相同的文本?
发布于 2019-04-22 08:32:17
尝试使用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
https://stackoverflow.com/questions/55787822
复制相似问题