Я сомневаюсь, что это рекомендуемый подход для добавления текста.Это означает, что каждый раз, когда вы изменяете какой-то текст, вам нужно повторно анализировать весь документ.Причина, по которой люди могут это сделать, заключается в том, что они не понимают, как использовать JEditorPane.Это включает меня.
Я предпочитаю использовать JTextPane, а затем использовать атрибуты.Простым примером может быть что-то вроде:
JTextPane textPane = new JTextPane();
textPane.setText( "original text" );
StyledDocument doc = textPane.getStyledDocument();
// Define a keyword attribute
SimpleAttributeSet keyWord = new SimpleAttributeSet();
StyleConstants.setForeground(keyWord, Color.RED);
StyleConstants.setBackground(keyWord, Color.YELLOW);
StyleConstants.setBold(keyWord, true);
// Add some text
try
{
doc.insertString(0, "Start of text\n", null );
doc.insertString(doc.getLength(), "\nEnd of text", keyWord );
}
catch(Exception e) { System.out.println(e); }