-2

我必须替换一些特殊字符,如 ' 和 © 因为当我将文本(包含这些特殊字符)存储到我的数据库中时,它们显示为 \xC2\xA9 ..(无效字符。)有人可以告诉我如何将它们存储到数据库中,因为它们看起来像或者如何替换它们(这是紧急的)。
感谢和问候

4

3 回答 3

3

确保您的整个堆栈(数据库、JVM、容器、应用程序等)使用相同的字符集(最好是 UTF-8)。变化是好事,有些地方不是。这将导致像您描述的那样的编码错误。

于 2013-03-21T11:45:23.950 回答
0

一种方法是在将字符串保存到数据库之前对此类字符串进行 URL 编码。当您从数据库中检索它们时,您可以在进一步使用它们之前对它们进行 URL 解码(或显示在 UI 上,具体取决于您的要求)。尽管这不是 URL 的情况,但它会将特殊字符替换为更兼容的字符。

URL 编码将替换这些字符,例如 © 将替换为 %40,'(单引号)将替换为 %27。有关 URL 编码的详细信息,请参阅此URL 编码参考

对于 URL 编码,您可以使用URLEncoder类,对于 URL 解码,您可以使用URLDecoder类。

于 2013-03-21T11:38:47.757 回答
0

利用

String str = "text@";
String new_str = str.replace("@","");
于 2013-03-21T11:08:11.193 回答