- JAVA

2016-07-21 30 views
0

Ich habe eine Textdatei mit folgenden Struktur:- JAVA

Col_A   Col_B   Col_C 
    1    2     3 
    1    2     3 
    1    2     3 

Ich möchte nur die zweite Säule erhalten. Das Ergebnis sollte sein:

2 
2 
2 

ich den folgenden Code, aber es gibt mir nur die erste Zeile:

BufferedReader br = new BufferedReader(new FileReader("/home/cloudera/Downloads/sms-call-internet-tn-2013-12-31.txt")); 
String line = br.readLine(); 
String[] columns = line.split("/t"); 
String valueNeeded = columns[0]; 
System.out.println(valueNeeded); 

Wie kann ich das erreichen?

Vielen Dank !!!

Antwort

1

Verwenden Sie einfach eine Schleife alle Zeilen zu lesen:

 BufferedReader br = new BufferedReader(new FileReader("/home/cloudera/Downloads/sms-call-internet-tn-2013-12-31.txt")); 
     String line = null; 

     while ((line = br.readLine()) != null) { 

      String[] columns = line.split("/t"); 
      String valueNeeded = columns[1]; 
      System.out.println(valueNeeded); 

     } 
+0

Hallo Berger, vielen Dank für Ihre Antwort. Ihr Code läuft cool, aber ich möchte nur die zweite Spalte zurückgeben ... – SaCvP

+0

@SaCvP: oh ja, verwenden Sie einfach den Index 1 des Arrays anstelle von 0, bearbeitete ich die Antwort. – Berger

+0

Es gibt mir den folgenden Fehler: Ausnahme im Thread "Haupt" java.lang.ArrayIndexOutOfBoundsException: 1 \t bei Unix_TimeStamp.main (Unix_TimeStamp.java:14) – SaCvP