我遇到了一些奇怪的问题。我正在从数据库“嗨 \n 你好吗?\n 故事继续”中获取电子邮件模板。我将其分配给我的 java 应用程序中的字符串并发送电子邮件。最终输出应该是
Hi
How are you?
story continues
但我的结果是这样的
Hi \n How are you? \n story continue
如果我在字符串中硬编码,而不是从 db 获取,我会以正确的方式获取。
什么可能导致 \n 无效?
有没有办法让\n在java层有效?
尝试这个
String str = //value read from DB
str = str.replaceAll("\\\\n", "\n");
您必须使用StringEscapeUtils。您需要的方法是unescapeJava()
.
它在Apache Commons Lang内部。