Hallo,
wieder einmal habe ich dein Problem mit einer NullPointerException.
Hier der wesentliche stark beschnittene Teil des Codes:
Es geht darum, den Inhalt einer gezipten Datei einzulesen und auszuwerten. Für die Auswertung soll aus jeder Zeile ein Datensatz gebildet und alle Datensätze in einem Array zusammengefasst werden. Die Struktur dieser Datensätze ist in der inneren Klasse "Aufgabe" vorgegeben.
Das Einlesen der Zip-Datei funktioniert einwandfrei. Die Instanzierung des "aufgabe"-Arrays scheint auch zu funktionieren, es werden nAufgaben Objekte für das Array angezeigt. Sieht man jedoch genauer nach, erkennt man, dass die Objekte in dem Array leer sind. Sie haben alle den Wert null. Das führt natürlich bei dem Versuch, einem Objekt etwas zuzuweisen, zu der NullPointerException.
Was mache ich falsch oder was muss ich noch machen, dass es nicht zu dieser NullPointerException kommt.
MfG, kodela
wieder einmal habe ich dein Problem mit einer NullPointerException.
Hier der wesentliche stark beschnittene Teil des Codes:
Java:
public class Test {
static Aufgabe aufgabe[]; <--------- Deklaration
private static void testeZip() {
ZipFile zipFile = null;
try {
zipFile = new ZipFile("./ziptest.kar");
} catch (IOException ex) {
}
if (zipFile != null) {
. . .
. . .
aufgabe = new Aufgabe[nAufgaben]; <--------- Instanzierung
int bi = 0;
for (int i = 0; i < nAufgaben; i++) {
aufgabe[i].level = buffer[bi] - 48; <--------- Initialisierung
. . .
}
}
}
private static class Aufgabe { <--------- Innere Klasse
int status;
String aufgabe;
public Aufgabe() {
this.status = 0;
this.aufgabe = "";
}
}
public static void main(String[] args) {
testeZip();
}
}
Das Einlesen der Zip-Datei funktioniert einwandfrei. Die Instanzierung des "aufgabe"-Arrays scheint auch zu funktionieren, es werden nAufgaben Objekte für das Array angezeigt. Sieht man jedoch genauer nach, erkennt man, dass die Objekte in dem Array leer sind. Sie haben alle den Wert null. Das führt natürlich bei dem Versuch, einem Objekt etwas zuzuweisen, zu der NullPointerException.
Was mache ich falsch oder was muss ich noch machen, dass es nicht zu dieser NullPointerException kommt.
MfG, kodela