在 HTML、JAVA、Spring 中保留换行符

Posted

技术标签:

【中文标题】在 HTML、JAVA、Spring 中保留换行符【英文标题】:Preserve line breaks in HTML,JAVA,Spring 【发布时间】:2011-04-16 03:10:31 【问题描述】:

我有一个使用 html(前端)、java(服务器端)构建的 Web 应用程序 我在发布一些带有换行符的数据时有一个文本区域(在一个单词后按回车键) 不保留换行符(数据彼此相邻出现,没有换行符) 如何保留换行符?,请注意我在显示时没有使用标签(必须)

我正在使用代码服务器端将新行转换为 br

public String saveLineBreaks(String text) 
        return text.replaceAll("\n", "<br/>");
    

但它不能正常工作

【问题讨论】:

问题不清楚。用代码举例说明 问题已被编辑 不要使用replaceAll,这是正则表达式版本。使用replace(),你只想要哑字符串替换。 我正在使用 replaceAll 因为文本可能包含不止一个新行 或者您可以尝试通过使用额外的反斜杠转义 \n 来更好地制定正则表达式。 【参考方案1】:

这只是一个疯狂的猜测,因为我不知道您使用的是什么网络框架等,但是:

&lt;textarea&gt; 中的文本可能会有换行符 (\n),但 HTML 会将它们解释为空格。所以在java端,你需要做这样的事情:

String forOutput = input.replace("\n", "<br />\n");

但是,在几乎所有可以想象的 Web 框架中,都有一些实用方法可以手动或自动为您执行此操作,因此问题是找到适合您的。

【讨论】:

对我不起作用,我尝试了其他 10 个版本【参考方案2】:

也许\n 不是行分隔符。尝试使用System.getProperty("line.separator")

【讨论】:

以上是关于在 HTML、JAVA、Spring 中保留换行符的主要内容,如果未能解决你的问题,请参考以下文章

如何在html textarea POST数据中保留换行符

将 HTML 表格粘贴到 Excel 中,如何在单元格中保留换行符

如何在String readAllBytes中保留换行符

java解析xml文件,会把节点属性中的换行转换成空格,怎样才能避免此类转换,即保留换行

如何在 CKEditor 所见即所得编辑器中保留换行符

如何通过可内容编辑的div输入将元素的换行符(格式)保留在列表中?