我有一个基于HTML的jEditorPane。 我发现你可以使用:
String text = jEditorPane1.getDocument().getText(0, jEditorPane1.getDocument().getLength());
text = text.replaceAll("(?<!^)\n", "\n<br />");
jEditorPane1.setText("<html>" + text + "</html>");
通过这种方式,我从编辑窗格中获取了文本。当我想把它放回编辑窗格时,我只需用&lt;替换换行符号。 br /&gt;。而不是把它放回去。
直到现在一切都很好。但是当我第二次从编辑窗格中获取文本时,没有换行符号。
我如何保留这个换行符号?
答案 0 :(得分:2)
尝试使用"</p><p>"
代替中间的"<br>"
和
jEditorPane1.setText("<html><p>" + text + "</p></html>");
答案 1 :(得分:1)
<p style=\"margin-top: 0\">
这对我来说很有帮助。感谢stanislavl! 我已经检查过一个新行如何在html模式的jeditpane中正常工作。它是没有边距的p标签。 奇怪的是,它起作用了。
text = text.replaceAll("\n(.*?)(?=(\n|$))", "<p style=\"margin-top: 0\">$1</p>");
这是真正的工作。在\ n之后用&lt; n围绕所有文本p为H.&LT; / p为H.标签
感谢您的帮助