0

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

Hi
How are you?
story continues

但我的结果是这样的

Hi \n How are you? \n story continue

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

什么可能导致 \n 无效?

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

4

2 回答 2

2

尝试这个

    String str = //value read from DB
    str = str.replaceAll("\\\\n", "\n");
于 2013-07-19T16:14:35.797 回答
0

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

它在Apache Commons Lang内部。

于 2013-07-19T16:02:40.830 回答