【发布时间】:2019-09-03 07:18:47
【问题描述】:
我尝试使用 Apache Commons 库 (v. 1.7) 中的 StringEscapeUtils 转义和取消转义大文本,该库将从数据库中存储和检索,在本例中为 H2 数据库。除了新行之外,几乎所有特殊字符都成功转义和取消转义。我正在使用带有百里香的 Spring Boot (v2.1.3.)。
例如,如果我尝试存储以下文本:
He didn't say, "Stop!" This is a new line!
它将文本存储为:
He didn't say, \"Stop!\"\r\n\r\nThis is a new line!
哪个好。但是当我使用 unescapeJava 方法对其进行转义时,换行符无法正常工作。我明白了
He didn't say, "Stop!" This is a new line!
编辑:
unescapeJava 方法在文本显示在 html 文本区域中时起作用。但是当它呈现为纯 html 时,换行符不起作用。
【问题讨论】:
-
欢迎来到 Stack Overflow!请阅读“如何创建minimal reproducible example”。然后使用edit 链接改进您的问题(不要通过 cmets 添加更多信息)。否则我们无法回答您的问题并为您提供帮助。不要向我们展示一些实际上与您的问题无关的生产代码。退一步,创建一个超级简单的例子来展示你的问题。为什么我们需要担心您的
addNewsItem()方法。当您问的只是如何正确使用这些库方法时?!所以:请专注于您问题的真正核心,并删除任何无关紧要的内容。 -
这应该可以。请显示有此问题的示例代码。
-
你可以试试 \\n 而不是 \n。
-
@IMS 已经尝试过那个,但它会显示为\n。顺便说一句,我编辑了我的问题
标签: java spring-boot stringescapeutils