JTextPane替换文档中的字符串

时间:2015-01-27 15:02:36

标签: java swing jtextpane

我的内容类型为HTML的JTextPane

JTextPane editor = new JTextPane();
editor.setContentType("text/html");

当用户输入" \"我想输入"&#92" (" \"的代码)。我该怎么办?

1 个答案:

答案 0 :(得分:3)

  

当用户输入“\”时,我想输入“&#92”(代码“\”)。我该怎么办?

在将字符串输入DocumentFilter之前,使用Document翻译字符串。

阅读How to Implement a DocumentFilter上Swing教程中的部分,了解更多信息以帮助您入门。

要覆盖替换(...)方法,您可以执行以下操作:

public void replace(final FilterBypass fb, final int offs, final int length, final String str, final AttributeSet a)
{
    if (str.equals("\"))
        super.replace(fb, ofs, length, "&#92", a);
    else
        super.replace(fb, offs, length, str, a);
}