Leider bekomme ich eine ---- Exception in thread "main" java.lang.NullPointerException
Code:
package Test;
import java.io.BufferedReader;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;
import java.util.ArrayList;
public class Testen {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
String ein = null;
ArrayList<String> inhalt = new ArrayList<String>();
int i = 0;
try {
BufferedReader einlesen = new BufferedReader(new FileReader("test.txt"));
try {
ein = einlesen.readLine().split(";").toString();
inhalt.add(ein);
System.out.println("Es sind " + inhalt.size() + " Namen gespeichert.");
while(ein != null){
ein = einlesen.readLine().split(";").toString();
inhalt.add(ein);
System.out.println("Es sind " + inhalt.size() + " Namen gespeichert.");
System.out.println(inhalt.get(i).toString());
i++;
}
} catch (IOException e) {
// TODO Auto-generated catch block
System.out.println("IO Exception");
}
einlesen.close();
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
System.out.println("File Not Found!");
} catch (IOException e) {
// TODO Auto-generated catch block
System.out.println("IO Exception 2");
}
}
}
Ich denke das ich das ganze nicht ganz Ideal gelöst habe und dann steigt er
auch aus wenn nichts mehr in der Datei steht ???
Dachte eigentlich das wenn nichts mehr in der Datei steht kommt null zurück ???
Und wie kann ich den Inhalt der ArrayList also nicht das objekt sondern der Name wieder ausgeben ???
ich hab bezüglich diesem thema auch n probelm..
ich hab ne methode gemacht zum einlesen und zwar:
/**Wird benötigt für die Aufgabe 4*/
static BufferedReader Eingabe = new BufferedReader(new InputStreamReader(System.in));
/**Dies ist eine Methode die zur Eingabe von Texten dient*/
public static String erfasseText()throws IOException
{
return Eingabe.readLine();
}
dies rufe ich in folgender methode auf:
void aufgabe4(String wort)throws IOException
{
System.out.print("Bitte tragen sie hier ihre Zeichenkette ein:");
wort = erfasseText();
}//end aufgabe4()
im konstruktor rufe ich die methode aufgabe4() auf, aber bei der methode steht folgendes problem:
"The method aufgabe4(String) in the type Unicodes is not applicable for the arguments ()"
in den methoden selbst ist kein fehler zu finden!!
ich krieg die kriese
die Fehlermeldung ist doch deutlich: du musst der Operation einen String-Parameter übergeben,
ein Aufruf ohne Parameter ist nicht erlaubt,
allerdings wird der Parameter wort in aufgabe4() gar nicht verwendet, kann also weg:
void aufgabe4()throws IOException
{
System.out.print("Bitte tragen sie hier ihre Zeichenkette ein:");
String wort = erfasseText();
// wort wird nicht verwendet?
}//end aufgabe4()