Ich habe eine kleine Verständnissfrage, und zwar bekomme ich wenn ich auf folgende art ein Dokument einlese :
in der ersten Zeile der Ausgabe "null", sprich wenn ich nun versuche auf line.lenght() zuzugreifen führt dieses zu einer NullPointerException, frage ist nun warum genau stimmt die ausgabe ausser in der ersten Zeile , diese verschiebt er mir in die 2te Zeile , also geht zumindest nichts verloren aber trotzdem frage ich mich warum er dort null ausgibt .
Text :
Ausgabe :
Java:
package versuche;
import java.io.BufferedReader;
import java.io.File;
import java.io.FileReader;
import java.io.IOException;
public class Reader
{
//Erstellt Instanzvariablen und liest den File ein
private String output, line;
File file = new File("H://Apps/Test.txt");
public static void main(String[] args) throws IOException
{
//Erstellt neues Reader Objekt und führt Methode read auf dieser aus
new Reader().read();
}
private void read() throws IOException
{
//Erstellt neues BufferedReader Objekt welches einen neuen FileReader umgibt
BufferedReader br = new BufferedReader(new FileReader(file));
/*ließt Zeilen ein solange Zeilen im dokument "file" vorhanden sind und
*speichert diese in einem String */
while((line = br.readLine()) != null)
{
output += "\n" + line; // Zeilenumbrüche nach jeder eingelesenen Zeile "\n"
}
br.close();
System.out.println(output);
}
}
in der ersten Zeile der Ausgabe "null", sprich wenn ich nun versuche auf line.lenght() zuzugreifen führt dieses zu einer NullPointerException, frage ist nun warum genau stimmt die ausgabe ausser in der ersten Zeile , diese verschiebt er mir in die 2te Zeile , also geht zumindest nichts verloren aber trotzdem frage ich mich warum er dort null ausgibt .
Text :
Java:
Test
Hallo
Welt
Ausgabe :
Java:
null
Test
Hallo
Welt
Zuletzt bearbeitet: