尝试将连字符插入数据库时​​遇到颠倒的问号

时间:2014-06-05 06:59:41

标签: java database jsp character-encoding

当试图通过java编程插入 - 或'进入oracle数据库时,显示结果显示为' - '的上方问号¿。

示例看起来像

我加入了各种各样的俱乐部。 而不是我加入了一个俱乐部。

输入是通过文本区域,jsp编码为

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

使用oracle.jdbc.driver.OracleDriver

2 个答案:

答案 0 :(得分:1)

检查您的所有内容是否都配置为使用UTF-8(或您喜欢的任何字符集):

  • DB
  • Java Sources(如果输入来自此处,例如硬编码字符串)
  • 资源(如果输入来自此处,例如翻译)
  • Application Server(在Windows上,它们以不同的编码开头)
  • HTTP请求(内容类型)

我发现,当不了解字符编码问题的开发人员在具有混合基础架构的系统上工作时(例如,Windows上的应用服务器,Linux上的数据库)。

答案 1 :(得分:1)

我通过复制来自MS Word文档的HTML电子邮件中的文本,粘贴到我的JavaScript应用程序的textarea字段中,并将其发布到连接到Oracle数据库的Web API来解决此问题。

快速清洁绳子就足够了:

var tempDescription = myTextAreaContent;
if (tempDescription){
    tempDescription = tempDescription.replace('–', '-'); 
}
if (tempDescription){
    tempDescription = tempDescription.replace('’', '\''); 
}