Java jTextArea上的查找/替换对话框

Java jTextArea上的查找/替换对话框,java,netbeans,Java,Netbeans,我有任务使用NetBeans Java制作记事本。我已经完成了整个过程,我只是不知道如何实现查找/替换对话框,你能帮我吗。我使用的是jTextArea。我假设您已经知道以及如何创建适当的对话框(因为您显然已经为记事本创建了jTextArea),并且您只想知道如何使其在后端工作 我要做的是让一个扫描仪对象遍历您的文件以执行查找和替换 String myAlteredText = ""; Scanner scanner = new Scanner(myText); while(scanner.ha

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

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

我要做的是让一个
扫描仪
对象遍历您的文件以执行查找和替换

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()
)。为了保持不正常的间距和换行,您可能需要做一些挑剔的其他事情,但这是我将使用的一般方法。

您可以使用JTable,尽管这非常不传统。您可以将每个单词加载到新单元格中。这样,当您需要替换1个单词时,您不需要更新整个jtextarea,只需1个字符,除非我弄错了。这将需要大量的工作,但是为了让它工作

你能给我们看一些代码吗?我只有带菜单的文本区,没有什么特别的。我有诸如新建、打开、保存等选项。不需要显示代码:)什么是“myText”,是来自textArea的文本吗?以及如何突出显示我在textArea中找到的单词。是的,我假设
myText
是您记事本中的文本。有关突出显示技术,请参见。