Java - 将版权符号转换为©

标签 java character-encoding

我有一个字符串传入,我需要将其存储在数据库中。现在该字符串确实包含版权符号©。我想将其转换为 © ;以便它可以在每个浏览器和每个编码标准上正确显示。

这是我到目前为止所到达的地方

- 尝试了replace(),这对于版权字符来说绝对不起作用。
- 尝试通过设置不同的编码标准来在浏览器中查看数据来转表,它显示为 �
- 将字符串转换为具有 UTF-8 字符集的字节数组,并计算出 -62 是版权字符的 ASCII 值。现在的问题是传入的字符串可能非常大,将其拆分为字节数组然后再形成字符串将非常昂贵。

感谢任何帮助。

最佳答案

HTML 转义

这可能无法解决您的编码问题,但可以从标题回答您的问题。

要对字符串进行 HTML 转义,我推荐 Apache Commons Lang 中的 StringEscapeUtils

StringEscapeUtils.escapeHtml(String)
<小时/>

编码

要解决您的编码问题..当您想使用 UTF-8 时,请确保至少设置以下一项。此外,当设置多个它们时,所有它们都必须一致。

HTTP header 中的内容类型

Content-Type: text/html; charset=utf-8

HTML

<meta http-equiv="Content-Type" content="text/html; charset=utf-8">

HTML 5

<meta charset="utf-8">

XHTML

<?xml version="1.0" encoding="UTF-8"?>

还要确保您提供的内容确实是 UTF-8 编码的。我建议使用无BOM的UTF-8编码。

关于Java - 将版权符号转换为©,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7648146/

相关文章:

python - 编码/解码有什么区别?

javascript - Geohash-16 : how to

Perl UTF8 编码错误。 LWP::UserAgent->decoded_content 或 Encode::decode 都不起作用。其他想法?

java - 有什么好的免费工具可以管理 Java 项目?

java - C#可以连接,但是java无法连接

java - 通过 java servlet 实现处理邮件协议(protocol)

ios - 将 uint8_t 转换为 NSString

browser - 可以在浏览器中显示的 Unicode 错误符号

java - 我可以在 oracle 随 java SE JDK 提供的默认 JRE 上运行 Java EE 程序吗?

java - Sonarqube - 记录的 API 配置