我必须更换一些特殊字符,例如'和©因为当我将文本(包含这些特殊字符)存储到我的数据库中时,这些字符显示为\ xC2 \ xA9 ..(无效字符。)任何一个都可以告诉我如何将它们存储到数据库中,因为它们看起来像或如何替换它们(这是紧急的) 感谢&安培;问候
答案 0 :(得分:3)
确保整个堆栈(数据库,JVM,容器,应用程序等)使用相同的字符集(最好是UTF-8)。变化是好事,某些地方不是。这将导致编码错误,如您描述的那样。
答案 1 :(得分:0)
使用
String str = "text@";
String new_str = str.replace("@","");
答案 2 :(得分:0)
一种方法可能是在将字符串保存到数据库之前对URL进行编码。从数据库中检索它们时,您可以在进一步使用它们之前对其进行URL解码(或在UI上显示,具体取决于您的要求)。尽管这不是URL的情况,但它会用更兼容的字符替换特殊字符。
URL编码将替换这些字符,例如©将替换为%40,'(单引号)将替换为%27。有关URL编码的详细信息,请参阅此URL Encoding Reference
对于网址编码,您可以使用URLEncoder类,对于URL解码,您可以使用URLDecoder类。