【问题标题】:Get Actual Character from ISO-8859-1 Character从 ISO-8859-1 字符中获取实际字符
【发布时间】:2012-03-03 07:00:59
【问题描述】:

我有一条短信:

Á example link.

ISO-8859-1 中,ÁÁ

现在我正在尝试使用以下代码将 Á 转换为 Á

Charset utf8charset = Charset.forName("UTF-8");
Charset iso88591charset = Charset.forName("ISO-8859-1");

ByteBuffer inputBuffer = ByteBuffer.wrap(text.getBytes());

CharBuffer data = iso88591charset.decode(inputBuffer);

ByteBuffer outputBuffer = utf8charset.encode(data);
byte[] outputData = outputBuffer.array();
return new String(outputData);

但它不会将 Á 转换为 Á

有什么方法可以实现吗?

我也想知道,给定一个字符串,我们能确定它是哪个字符集吗?

【问题讨论】:

    标签: java utf-8 character-encoding iso-8859-1


    【解决方案1】:

    我认为您将字符编码(UTF-8、ISO-8859-1...)与 HTML 字符实体(ÁÖ 等)混淆了。

    查看 Apache Commons StringEscapeUtilsunescapeHtml 函数,我想它会做你想做的事。

    【讨论】:

    • 非常感谢。这就是我想要的。
    猜你喜欢
    • 2013-01-19
    • 1970-01-01
    • 2012-09-29
    • 2014-01-17
    • 1970-01-01
    • 1970-01-01
    • 2012-09-01
    • 2016-11-26
    • 2014-01-18
    相关资源
    最近更新 更多