2012-12-29 36 views
0

我有使用NetBeans Java製作記事本的功能。我已經做了所有事情,我只是不知道如何實現查找/替換對話框,你能幫助我嗎?我正在使用jTextArea。在jTextArea上查找/替換對話框

+1

你能告訴我們一些代碼嗎? –

+0

我只有textArea和Menu,沒什麼特別的。我有像新建,打開,保存等選項,沒有必要顯示代碼:) – Alen

回答

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())。你可能需要做一些挑剔的事情來維持異常間距和換行符,但這是我將要使用的一般方法。

+0

什麼是「myText」,是來自textArea的文本?以及如何突出顯示我在textArea中找到的單詞。 – Alen

+0

是的,我假設'myText'是記事本中的文本。要突出顯示技術,請參閱[此問題](http://stackoverflow.com/questions/5674128/jtextpane-highlight-text)。 – asteri

+0

@Alen當然。 :) – asteri

0

你可以使用JTable,雖然這是非常規的。您可以將每個單詞加載到一個新的單元格中。這樣,當你需要替換1個單詞時,你不需要將整個jtextarea更新爲只有1個字符,除非我錯了。這將需要很多工作,但爲了得到這個工作

相關問題