Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/304.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/mercurial/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java-将版权符号转换为&;复制_Java_Character Encoding - Fatal编程技术网

Java-将版权符号转换为&;复制

Java-将版权符号转换为&;复制,java,character-encoding,Java,Character Encoding,我有一个字符串,需要存储在数据库中。现在,字符串确实包含版权符号©了。我想将其转换为©;因此,它可以在每个浏览器和每个编码标准上正确显示 到目前为止,我一直在这方面努力 -尝试了replace(),这对版权角色肯定不起作用。 -尝试通过设置不同的编码标准来在浏览器中查看数据来旋转表格,结果显示为� -使用UTF-8字符集将字符串转换为字节数组,并计算出-62是版权字符的ASCII值。现在的问题是,输入的字符串可能非常大,将其拆分为一个字节数组,然后再形成一个字符串将非常昂贵。 非常感谢

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

到目前为止,我一直在这方面努力

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

非常感谢您的帮助。

HTML 这可能不会解决您的编码问题,但会从标题中回答您的问题

要对字符串进行HTML转义,我建议使用
StringEscapeUtils
from


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

HTTP头中的内容类型 HTML

HTML 5

XHTML

还要确保您提供的内容是真正的UTF-8编码。我建议使用不带BOM的UTF-8编码。

HTML转义 这可能不会解决您的编码问题,但会从标题中回答您的问题

要对字符串进行HTML转义,我建议使用
StringEscapeUtils
from


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

HTTP头中的内容类型 HTML

HTML 5

XHTML

还要确保您提供的内容是真正的UTF-8编码。我建议使用不带BOM的UTF-8编码。

试试看

result = input.replace("\u00a9", "©");
试试看

result = input.replace("\u00a9", "©");

为什么要将转义的文本HTML存储在数据库中?这是用于表示的,不属于应用程序的核心数据。将字符串存储在您选择的编码中(当然,哪种编码并不重要,只要它是一致的,并且可以处理您需要的所有字符),并以这种方式处理数据。因此,你的问题的核心不是数据库

版权符号未正确显示的问题可能有几个原因。就像您正在发送浏览器UTF-8文本,但相应的
内容类型
声称您的内容是其他编码

一篇涵盖这个主题所有方面的文章将会非常广泛,但是你可以在网上找到很好的文档


不过,如果您坚持存储HTML转义数据:
string.replace(“\u00a9”,“©;”)

为什么要将转义的文本HTML存储在数据库中?这是用于表示的,不属于应用程序的核心数据。将字符串存储在您选择的编码中(当然,哪种编码并不重要,只要它是一致的,并且可以处理您需要的所有字符),并以这种方式处理数据。因此,你的问题的核心不是数据库

版权符号未正确显示的问题可能有几个原因。就像您正在发送浏览器UTF-8文本,但相应的
内容类型
声称您的内容是其他编码

一篇涵盖这个主题所有方面的文章将会非常广泛,但是你可以在网上找到很好的文档


不过,如果您坚持存储HTML转义数据:
string.replace(“\u00a9”,“©;”)

为什么
replace()
不起作用?当您尝试它时得到了什么结果?版权字符没有ASCII值,因为ASCII不包含它!好啊现在有些事情已经开始起作用了——大部分情况下。现在的问题是显示版权字符。使用FIREBUG,我看到服务器为请求生成的响应确实包含版权字符。它只是没有被显示的方式;head不包含utf-8的字符集!为什么
replace()
不起作用?当您尝试它时得到了什么结果?版权字符没有ASCII值,因为ASCII不包含它!好啊现在有些事情已经开始起作用了——大部分情况下。现在的问题是显示版权字符。使用FIREBUG,我看到服务器为请求生成的响应确实包含版权字符。它只是没有被显示的方式;head不包含utf-8的字符集!好啊现在有些事情已经开始起作用了——大部分情况下。现在的问题是显示版权字符。使用FIREBUG,我看到服务器为请求生成的响应确实包含版权字符。它只是没有被显示的方式;head不包含utf-8的字符集!escapeHtml把所有的标签、空格和所有东西都弄乱了。我只想更改版权符号。str.replace(“\u00a9”,“©;”)似乎不起作用!然后仅通过该方法传递版权符号。但对我来说,你有一些内容,其中部分内容仍然需要转义,而其他部分则不需要转义。这看起来好像是混在一起的。。。或者该内容打算用作UTF-8,“未转义部分”不需要转义,因为使用了字符集。更新了我的答案,并提供了一些有关编码的提示。也许这有助于解决编码问题。我建议您首先解决这个问题,因为在解决编码问题时,您很有可能不必再关心转义。好的。。现在索姆
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta charset="utf-8">
<?xml version="1.0" encoding="UTF-8"?>
result = input.replace("\u00a9", "&copy;");