我尝试从JTextArea中提取最后一行并将其设置为String 这是我的鳕鱼:
JTextArea text = new JTextArea();
String text2 = text.getText();
int totalLines = text.getLineCount();
for(int j=0; j < totalLines; j++) {
int end = text.getLineEndOffset(j);
String line = text2.substring(end);
}
可以告诉我哪里错了?感谢
答案 0 :(得分:2)
你非常接近,只需使用JTextArea.getLineStartOffset
来获取最后一行的开头,例如:
int last = area.getLineCount() - 1;
int start = area.getLineStartOffset(last);
int end = area.getLineEndOffset(last);
String lastLine = area.getText().substring(start, end);
答案 1 :(得分:2)
查看Document(JTextComponent的模型)并使用Text Utilities方法
public static final int getRowStart(JTextComponent c, int offs)
public static final int getRowEnd(JTextComponent c, int offs)
(throws BadLocationException
)
修改
编辑2
如何提取JTextArea的元素
element
也可能是line
或word