Мой класс получает строку, содержащую Path (dir1/dir2/abc.txt) или файл (def.txt), и я хочу писать/читать в этот файл. Если файл не существует, я хочу создать каталоги (если они есть) и файл.Java: Создание файла или каталога, если не существует
Мой конструктор класса до сих пор («Pfad» является экземпляром переменной):
public SerializedFahrzeugDAO(String path) {
pfad=path;
try{
FileInputStream filein= new FileInputStream(pfad);
ObjectInputStream in = new ObjectInputStream(filein);
List<Fahrzeug> liste = (List<Fahrzeug>)in.readObject();
in.close();
FileOutputStream fileout = new FileOutputStream(pfad);
ObjectOutputStream out = new ObjectOutputStream(fileout);
out.writeObject(liste);
out.close();
}
catch (Exception f){
if(f instanceof FileNotFoundException){
try{
File ziel = new File(pfad);
File dir= new File(ziel.getParentFile().getAbsolutePath());
dir.mkdirs();
FileOutputStream fileout = new FileOutputStream(pfad);
ObjectOutputStream out = new ObjectOutputStream(fileout);
List<Fahrzeug> newlist = new ArrayList<Fahrzeug>();
out.writeObject(newlist);
out.close();
}
catch(Exception y){System.out.println(y); }
}
else {System.out.println(f);}}
Он отлично работает с путями, как «реж/file.txt», но если я только ввести имя файла, я получаю a NullPointerException
.
Подойдите ближе к стеклу. Где заброшено исключение? Опубликуйте весь стек, чтобы мы могли помочь. –