ich schreib mir grad ein kleines Programm das später mal Textdateien codieren soll
allerdings wirft er mir beim einlesen in einen BufferedReader eine NPE raus.
hier die Fehlermeldung:
und hier der Code:
Ich wär sehr dankbar wenn mir jemand helfen könnte, finde den fehler einfach nicht(ist bestimmt wie immer wa ganz offensichtliches)
lg Teddy
allerdings wirft er mir beim einlesen in einen BufferedReader eine NPE raus.
hier die Fehlermeldung:
Exception in thread "main" java.lang.NullPointerException
at com.codifier.de.CodifierMain.main(CodifierMain.java:42)
und hier der Code:
Code:
package com.codifier.de;
//################################################################################
// IMPORTS
//################################################################################
import java.io.BufferedReader;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
//################################################################################
// MAIN-CLASS
//################################################################################
public class CodifierMain {
private FileReader reader;
private FileWriter writer;
private int code = 0;
public int menu = 0;
BufferedReader br;
//################################################################################
// MAIN-FUNCTION
//################################################################################
public static void main(String[] args){
CodifierMain codifier = new CodifierMain();
System.out.println("\n\n##################################");
System.out.println("Text Codifier 1.0 by _Teddy_");
System.out.println("##################################\n\n");
System.out.println("Bitte Menüpunkt auswählen:");
System.out.println(" 1.Datei codieren");
System.out.println(" 2.Datei decodieren");
System.out.println(" 3.Programm beenden");
while(codifier.menu < 1 || codifier.menu >3){
try {
codifier.menu = Integer.parseInt(codifier.br.readLine());
codifier.br.close();
} catch (IOException e) {
e.printStackTrace();
}
}
switch(codifier.menu){
case 1: try {
codifier.code(codifier);
} catch (IOException e) {
System.out.println("Fehler!");
e.printStackTrace();
}
break;
case 2: codifier.decode();
break;
case 3: System.exit(0);
}
}
void code(CodifierMain codifier) throws IOException {
System.out.println("Bitte Code eingeben(1-100)");
while(codifier.code < 1 && codifier.code > 100)
try {
codifier.setCode(System.in.read());
} catch (IOException e) {
System.out.println("Keine Gültige Eingabe");
e.printStackTrace();
}
System.out.println("Bitte Dateinamen eingeben");
codifier.setReader(System.in.toString());
codifier.setWriter("test.txt");
for ( int c; ( c = codifier.reader.read() ) != -1; )
codifier.writer.write( (char) c );
}
private void decode() {
// TODO Auto-generated method stub
}
Ich wär sehr dankbar wenn mir jemand helfen könnte, finde den fehler einfach nicht(ist bestimmt wie immer wa ganz offensichtliches)
lg Teddy