Erste Schritte Regex - Datei einlesen und splitten

coldstone

Bekanntes Mitglied
Hallo,

ich verzfeifele gerade an meinem code.

Code:
import java.io.*;
import java.util.Scanner;
import java.util.regex.*;


public class Grep {
   

   public static void main(String[] args) throws IOException {
         
       
        BufferedReader br = new BufferedReader(new FileReader(new File("C:/datei.txt")));
            String line = null;
            while((line = br.readLine()) != null) {
                     
                String[] parts = line.split( "\n" );
                System.out.println(parts[0]);
             }
      }
}

will den Text der datei einlesen und jedesmal bei einem zeilenumbruch im Text, die zeile in ein arrey speichern.
Eigentlich müsste mir parts[0] die erste zeile part[1] die zweite zeile usw. ausgeben.
Nur gibt parts[0] den kompletten text aus und parts[1] führt zu eine Exception.

Wo liegt da der Fehler? Kann mir jemand bitte helfen?
 
Aber readLine() liest doch alle zeilen ein? Oder nur die erste?
Wenn meine Textdatei wie folgt aussieht:

Code:
Lorem ipsum dolor sit amet, consetetur sadipscing elitr, 
sed diam nonumy eirmod tempor invidunt ut labore 
et dolore magna aliquyam erat, sed diam voluptua.
At vero eos et accusam et justo duo dolores et ea rebum.

Dann lese ich doch mit der readLine() methode jede einzelne Zeile ein.

Wenn ich
Code:
...
System.out.println(parts[0]);
...
verwende spuckt er mir genau das wieder aus:
Code:
Lorem ipsum dolor sit amet, consetetur sadipscing elitr, 
sed diam nonumy eirmod tempor invidunt ut labore 
et dolore magna aliquyam erat, sed diam voluptua.
At vero eos et accusam et justo duo dolores et ea rebum.
Wie kriege ich es aber hin das er in jedem array, jede einzelne zeile für sich abspeichert?

parts[0] --> erste zeile
parts[1] --> zweite zeile
parts[2] --> dritte zeile
usw...
 

Zurück
Oben