【问题标题】:\r\n encoding issue when reading from DB & Java\r\n 从 DB 和 Java 读取时出现编码问题
【发布时间】:2012-07-17 06:42:51
【问题描述】:

我有一个 Java 程序,它将“test1\r\ntest2”之类的消息存储到 DB 中 - 当我打印出来时,它会给我一个新行。 另一个线程正在从 DB 中读取字符串并使用 "\r\n" 将它们发送到输出,当我尝试将其打印出来时,它不会给我换行符 - 它只是打印出 "test1\r\ntest2" 我应该更改输出的编码吗?

应用部署在 UTF-8 编码集的 tomcat 上。

提前致谢。

【问题讨论】:

  • 添加一些代码 sn-ps,以防两个不同的调用翻译不同。如果输入不同,可能是在某些时候对它们进行双重编码,而只进行单解码。
  • 发送只是将参数传递给 SQL // 读取 msg: String s_Messages = resultUnfinishedJobs.getColumnValueTrim(logWarn(), "MESSAGERESPONSE", i);

标签: java database encoding


【解决方案1】:

这些字符串实际上是否以“\r\n”的形式存储在数据库中?

在那种情况下,我认为你必须做一个

String correct = dbString.replace("\\r\\n","\r\n")
在从数据库返回的字符串上。

【讨论】:

  • 是的,它们实际上存储为 \r\n 我将立即尝试 :) 谢谢!
猜你喜欢
  • 1970-01-01
  • 2015-08-17
  • 1970-01-01
  • 1970-01-01
  • 2012-01-04
  • 1970-01-01
  • 1970-01-01
  • 2019-09-18
  • 2020-09-26
相关资源
最近更新 更多