# [erledigt] Bestimmte Zeile aus JTextArea löschen



## mayewski (5. Okt 2010)

Guten Abend 

Ich habe da eine kleine Frage zu einer JTextArea.

Mit folgendem Code lese ich den Text aus der JTextArea aus.


```
BufferedReader br = new BufferedReader(new StringReader(textArea.getText()));
String line = null;
while (true)
{
    line = br.readLine();
    if (line == null) break;
    verarbeiteIrgendwie(line);
}
```

Nun möchte schauen, ob eine Zeile das Wort "Beispiel" enthält.
Wenn ja, möchte ich diese Zeile löschen.

Kann mir jemand helfen, wie ich eine Zeile aus der JTextArea löschen kann?

Schonmal vielen Dank


----------



## VfL_Freak (6. Okt 2010)

Moin,

schau Dir mal die Klasse "Document" an .... 

Beispiel:

```
TextArea.setDocument( new LimitedPlainDocument(10000) );
TextArea.getDocument().addDocumentListener( new DocumentListener() )
{
     ...
}
```

Gruß
Klaus


----------



## KrokoDiehl (6. Okt 2010)

Wie soll diese Funktionalität denn eingebetten sein? Soll sie durch irgendeine Aktion ausgelöst werden und auf den bestehenden Text angewendet werden? Oder soll es irgendwie während der Eingabe im Textbereich geschehen (...das fände ich eher komisch).

Wenn Ersteres gewünscht ist, bist du schon ziemlich auf dem richtigen weg:
- Text zeilenweise lesen
- Wenn Zeile NICHT "Beispiel" enthält wird sie in einen temporären Text übernommen​- Inhalt der TextPane auf den temporären Text setzen

So in etwa:

```
BufferedReader br = new BufferedReader(new StringReader(textArea.getText()));
String line = null;
StringBuilder newText = new StringBuilder();
while ( (line = br.readLine()) != null )
{
    if ( ! line.contains("Beispiel"))
    {
        newText.append(line);
    }
}
textArea.setText(newText.toString());
```


----------



## mayewski (6. Okt 2010)

@KrokoDiehl

Ja genau, so meinte ich das.
Ist somit erledigt.

Vielen Dank euch beiden


----------

