Versuchen Sie diesen Code, es funktioniert auf meinem Rechner (ubuntu)
%Vor%Ich versuche ein Archiv in Java zu entpacken, das sowohl Ordner als auch Dateien innerhalb des Archivs enthält. Das Problem ist, dass es immer dann eine FNF-Ausnahme auslöst, wenn es die Ordner erreicht und versucht, sie zu entpacken. Mein Unzip-Code ist wie folgt:
%Vor%Ich dachte, ich hätte komprimierte Ordner mit
bearbeitet %Vor%Aber das scheint das Problem nicht zu lösen. Was fehlt mir hier?
Stapelverfolgung:
%Vor%"aspell" ist ein Ordner, der sich im Archiv befand.
Ich habe Daniels Vorschlag,
hinzuzufügen, versucht %Vor%nach
%Vor%Das hat eine andere Ausnahme ausgelöst:
%Vor%Es scheint, dass Sie das Verzeichnis zuerst als Datei verarbeiten und eine leere Datei erstellen, die die Erstellung des Verzeichnisses verhindert.
%Vor%Es ist schwer, ganz sicher zu sein, aber so sieht es aus. Die erste Zeile "Entpacken:" stammt aus, als Ihr Code eine leere Datei namens %code% erstellt hat. Bei der nächsten Iteration haben Sie versucht, ein Verzeichnis mit demselben Namen zu erstellen, das wahrscheinlich im Hintergrund fehlgeschlagen ist und den späteren Fehler verursacht hat.
%code%
Windows unterstützt das Symbol% co_de% nicht als "root"
Wenn Sie eine Datei laden möchten, die Sie in Ihr JAR legen, müssen Sie
verwenden %Vor%oder
%Vor%Die anderen Poster sind richtig. Der Pfad, den Sie geben, ist kein relativer Pfad. Sie könnten möglicherweise etwas wie %code% tun. Dadurch können Sie eine Datei basierend auf einem Pfad relativ zu der Klasse, von der Sie sie aufrufen, als Stream laden.
Weitere Informationen finden Sie in der Java-API: Ссылка
Ich habe versucht, ein Objekt von %code% zu erstellen und den relativen Wert einer Datei an seinen Konstruktor zu übergeben, aber es funktioniert nicht richtig und warf ein %code%
%Vor%