0

我有使用 NetBeans Java 制作记事本的任务。我已经完成了整个事情,我只是不知道如何实现查找/替换对话框,你能帮我解决这个问题吗?我正在使用 jTextArea。

4

2 回答 2

1

我假设您已经了解Swing以及如何制作适当的对话框(因为您显然已经JTextArea为记事本制作了等效的对话框),并且您只想知道如何使其在后端工作。

我要做的是让一个Scanner对象通过您的文件来执行查找和替换。

String myAlteredText = "";
Scanner scanner = new Scanner(myText);

while(scanner.hasNext()) {
    String next = scanner.next();
    if(next.equals(userFindInput)) {
        myAlteredText += userReplaceInput;
    }
    else {
        myAlteredText += next;
    }
    myAlteredText += " ";
}

.equalsIgnoreCase()如果大小写无关紧要,您可以使用。同样,您可以调整以适应您的用户参数(即,如果它不必匹配整个单词,请.contains()改用)。您可能需要做一些挑剔的其他事情来保持异常间距和换行符,但这是我会使用的一般方法。

于 2012-12-29T16:59:52.283 回答
0

您可以使用 JTable,尽管这是非常规的。您可以将每个单词加载到一个新单元格中。这样,当您需要替换 1 个单词时,您不需要将整个 jtextarea 更新为 1 个字符,除非我弄错了。然而,这将需要大量工作才能使其正常工作

于 2012-12-29T20:18:23.287 回答