【问题标题】:Behaviour of \n(new line ) character geting from database [duplicate]从数据库中获取 \n(new line ) 字符的行为 [重复]
【发布时间】:2013-07-20 00:14:35
【问题描述】:

我遇到了一些奇怪的问题。我正在从数据库“嗨 \n 你好吗?\n 故事还在继续”中获取电子邮件模板。我将其分配给我的 java 应用程序中的字符串并发送电子邮件。最终输出应该是

Hi
How are you?
story continues

但是我的结果是这样的

Hi \n How are you? \n story continue

如果我在字符串中硬编码,我会以正确的方式获取,而不是从 db 获取。

什么可能导致\n无效?

有没有办法让\n在java层生效?

【问题讨论】:

  • \n 如何到达那里?您应该使用实际的换行符。
  • 您的数据库是否有\n\\n

标签: java database string oracle


【解决方案1】:

试试这个

    String str = //value read from DB
    str = str.replaceAll("\\\\n", "\n");

【讨论】:

    【解决方案2】:

    你必须使用StringEscapeUtils。您需要的方法是unescapeJava()

    Apache Commons Lang里面。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-03-31
      • 1970-01-01
      • 1970-01-01
      • 2023-03-24
      • 2021-12-12
      • 2019-08-09
      相关资源
      最近更新 更多