höchster ordner in zip datei

D

derspot966

Gast
Hallo,
ich versuche gerade eine zip datei zu entpacken was bisher auch sehr gut funktioniert. Allerdings würde ich jetzt gerne wissen wie ich den höchsten ordner erhalte der sich in der zip datei befindet.

Finde dafür irgendwie keinen lösungsansatz.

Vielen Dank!
 
D

derspot966

Gast
hab mich villeicht ein wenig kompliziert ausgedrückt. In meiner Zip-Datei gibt es immer nur einen Ordner, ich weiss allerdings nicht wie dieser heisst. Wenn ich die Zip-Datei nun entpacke kann ich nicht in den Ordner wechseln da ich nicht weiss wie der Ordner in der Zip-Datei heisst. Wie bekomme ich diesen Namen?
 
S

SlaterB

Gast
wenn wie dort, hast du dann auch die Codezeilen

> if(entry.isDirectory()) {
> // Assume directories are stored parents first then children.
> System.err.println("Extracting directory: " + entry.getName());
bzw.
> System.err.println("Extracting file: " + entry.getName());
?
ist damit nicht offensichtlich in welchem Verzeichnis welche Datei liegt?
wenn übrigens in der Ausgabe kein Verzeichnis sondern nur ein Dateiname erscheint, dann eben weil die Datei direkt im Zip liegt,
ganz ohne Verzeichnis
 
D

derspot966

Gast
Also ich finde das nicht offensichtlich.

Ja ich kann mir auch alle Verzeichnisse ausgeben lassen und ich weiss auch welche Datei wo drine liegt.
Was ich will, ist allerdings das Verzeichnis was ganz oben liegt im zip-File. Und wenn ich mir die Verzeichnisse ausgeben lassen während sie entpackt werden scheint es so als gäbe es kein System.

Beispiel:

Dateisystem->ZIP-File->Ordner den ich suche -> viele weitere Dateien und Verzeichnisse

Ich will jetzt eine File-Referenz auf "Ordner den ich suche" . Den Namen dieses Ordners kenne ich allerdings nicht im vorraus.
 
S

SlaterB

Gast
wie sieht denn die Ausgabe bei dir in etwa aus?
aus deinen Vorgaben (nur ein Verzeichnis XY, alle Dateien darin) kann ich vermuten, dass du im besten Fall
unter anderem
> Extracting directory: XY
als Ausgabe erhälst, dann wäre es doch besonders leicht (geradezu offensichtlich ;) ), an der Code-Stelle dieser Ausgabe die Daten (den Verzeichnisnamen) für was auch immer zu verwenden

ansonsten, ein bisschen schwieriger aber immer noch einfach, müsste es ja Ausgabe der Form
> Extracting file: XY/dateiZ.a
geben, also bei dieser Codestelle immer noch auf die Infos zugreifen, nur diesmal textuell das Verzeichnis herauslösen,

wo könnte da ein Problem bestehen oder fehlen komplett Programmierfähigkeiten?
 
D

derSpot966

Gast
ja das mit dem extrahieren des Strings könnte ich natürlich machen.
Aber ich will nicht das ich die Datei erst extrahieren muss um zu wissen welcher Ordner die höchste Hierarchie in der Zip-Datei hat.

Beispiel: Wenn die Datei schon einmal extrahiert wurde soll sie nicht noch einmal extrahiert werden da ich ansonsten das bestehende Verzeichnis überschreiben würde.
 
S

SlaterB

Gast
du durchläufst ja nur das Zip und schaust dir die Entries an, mit dem Stream musst du gar nichts machen,
den Befehl
> copyInputStream(zipFile.getInputStream(entry),..);
nach der Ausgabe im Beispiel kann ja weggelassen bzw. mit if-Abfrage versehen werden

na jedenfalls ist das mein Vorschlag, andere Meta-Daten habe ich persönlich noch nicht gesehen, was nicht heißt dass es sie nicht gibt,
aber wenn es sie irgendwo gibt, kann es auch sein dass sie programmatisch genau auf diesem Weg 'berechnet' wurden
 
D

despikeexd

Gast
was TO hier will ist folgendes

gegeben sei folgendes ZIP

Code:
FILE.ZIP
+->/dir1
| +->/dir1/file1
| +->/dir1/file2
| +->/dir1/dir2/file3
+->/dir3/file4
+->/file5

das problem was nun auftritt ist folgendes :
gehen wir mal gedanklich folgenden Code durch

Java:
for(Enumeration<? extends ZipEntry> entries=ZipFile.entries(); entries.hasMoreElements(); )
{
	System.out.println(((ZipEntry)entries.nextElement()).getName());
}
SOLLTE eigentlich folgendes ausgeben

/dir1
/dir1/file1
/dir1/file2
/dir1/dir2
/dir1/dir2/file3
/dir3
/dir3/file4
/file5

wie gesagt ... SOLLTE

was der code aber TATSÄCHLICH ausgibt sieht eher so aus

/dir1/file1
/dir1/file2
/dir1/dir2
/dir1/dir2/file3
/dir3/file4
/file5

ich hatte selbes problem schon mal auf tutorials.de gepostet : [Zip] ZipFile.entries() liefert keine Directories der erten ebene @ tutorials.de: Tutorials, Forum & Hilfe

das problem was sich hier zeigt ist das ORDNER der OBERSTEN ebene NICHT von ZipFile.entries() erfasst werden

auch getestet unter Java7 ... das problem besteht weiterhin
im bug-tracker von sun hab ich selbst noch nichts entsprechendes gefunden ... aber die einzige lösung die ich jetzt parat hätte wäre die strings aus ein ander nehmen und damit selbst auf die ordner der obersten eben kommen ... mit RegEx sehr einfach ...


ich hoffe ich konnte das problem von TO etwas deutlicher beschreiben
 

faetzminator

Gesperrter Benutzer
Was ist denn hier der oberste Node? [c]/[/c]? oder [c]{/dir1/;/dir3/}[/c]? Aber klar, mann kann schnell von Hand einen Tree bauen - oder wie man es auch immer haben möchte.
 
D

despikeexd

Gast
alter .. die frage is jetzt nich echt dein ernst oder ?
du hast meinen post entweder nicht vollständig gelesen oder ihn nicht verstanden ...

mal für linux-phreaks wie dich

ROOT ist natürlich "/"

es geht jetzt aber darum das die ordner die sich dierekt auf der eben ROOT befinden *also /dir1 und /dir3* so nicht selbstständig angezeigt werden sondern nur in verbindung mit den in ihnen enthaltenen daten

vielleicht solltest du dir den vergleich den ich gepostet habe zwischen dem was SOLLTE und dem was WIRKLICH IST ansehen ... vielleicht fällt dir dann auf wovon hier die rede ist


*sag mal : seit ihr hier auf java-forum.org echt so tief mittem niveau ? ... das is mir zu niedrig und desshalb auch der grund warum ich mich hier nicht reggen werden ... kommt erstmal auf unsere stufe vom tut.de forum ... dann können wir weiter reden
 

faetzminator

Gesperrter Benutzer
ROOT ist natürlich "/"
Ah danke, das wusste ich nun echt nicht... :bahnhof: Wenn du dir den Thread nochmals durchliest, dann merkst du, dass der TO immer von einem "höchsten Ordner" sprichst - und damit meint er wohl nicht [c]/[/c]. Er spricht von einem einzelnen "höchsten" Ordner.
es geht jetzt aber darum das die ordner die sich dierekt auf der eben ROOT befinden *also /dir1 und /dir3* so nicht selbstständig angezeigt werden sondern nur in verbindung mit den in ihnen enthaltenen daten
Es geht dir drum [...]. Mir geht es drum, was der TO will.

vielleicht solltest du dir den vergleich den ich gepostet habe zwischen dem was SOLLTE und dem was WIRKLICH IST ansehen ... vielleicht fällt dir dann auf wovon hier die rede ist
Hat der TO irgendwas von einem Tree gesagt, den er ausgeben will? Nein. Natürlich funktioniert das Catchen den Namens gleich, trotzdem erzählst du allen hier irgendwas, das nicht ganz zum Thema passt. Ist aber passend zu deiner sehr schönen Schlussrede:

*sag mal : seit ihr hier auf java-forum.org echt so tief mittem niveau ? ... das is mir zu niedrig und desshalb auch der grund warum ich mich hier nicht reggen werden ... kommt erstmal auf unsere stufe vom tut.de forum ... dann können wir weiter reden
Wenn dir dieses Forum nicht passt, dann geh.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
M Höchster Integer aus 9 Zahlen Java Basics - Anfänger-Themen 13
F Entität mit höchster ID per JPAQL selektieren Java Basics - Anfänger-Themen 3
M Wo den Ordner javafx-sdk-21.0.2 unter Linux ablegen? Java Basics - Anfänger-Themen 5
N Textdatei aus Resourcen-Ordner eines Projekts/ jar-file lesen Java Basics - Anfänger-Themen 4
berserkerdq2 Wie gebe ich den Pfad zu einer Datei an, die in einem Ordner in Eclipse ist? Java Basics - Anfänger-Themen 1
E Javamail Gesendet ordner Java Basics - Anfänger-Themen 1
E Outlook ordner auslesen Java Basics - Anfänger-Themen 4
L Ordner in neuen erstellten Ordner erstellen Java Basics - Anfänger-Themen 12
T src Ordner ausführen Java Basics - Anfänger-Themen 9
M Pfadprobleme - Zugriff auf einen Ordner im Workspace Java Basics - Anfänger-Themen 17
B Name von Verzeichnis bekommen - Files von einem Ordner auslesen Java Basics - Anfänger-Themen 4
L Files verschieben in einen Ordner Java Basics - Anfänger-Themen 87
Henri Mehrere Ordner umbenennen Java Basics - Anfänger-Themen 11
J Eclipse Einrichten : Umzug in anderen Ordner Java Basics - Anfänger-Themen 2
N Project layout eclipse ( seperate ordner für klassen ? ) Java Basics - Anfänger-Themen 1
F Ordner auf alle Unterdatein abfragen Java Basics - Anfänger-Themen 3
F Zeile in Ordner Java Basics - Anfänger-Themen 4
J variablePathPart ändern nach dem Ordner abgearbeitet worden ist Java Basics - Anfänger-Themen 1
das_leon Auf Ordner zugreifen (Vollzugriff) Java Basics - Anfänger-Themen 2
MR._FIRE_Flower Ordner im Explorer öffnen lassen Java Basics - Anfänger-Themen 2
C Methoden Dateien im Ordner anzeigen Java Basics - Anfänger-Themen 12
L Ordner Zippen Java Basics - Anfänger-Themen 2
L Ordner zusammenlegen Java Basics - Anfänger-Themen 3
J Java Ordner Erstellung nicht möglich. Java Basics - Anfänger-Themen 3
G Input/Output Aus txt-Datei lesen, aus Ordner Java Basics - Anfänger-Themen 1
M Ordner mit Inhalt löschen Java Basics - Anfänger-Themen 7
M Erste Schritte Ordner im selber Verzeichnis wählen Java Basics - Anfänger-Themen 1
D Input/Output Ordner aus .Jar in das Verzeichnis der .Jar kopieren Java Basics - Anfänger-Themen 1
P Einen Ordner mit Dateien hochladen [FTP] Java Basics - Anfänger-Themen 2
agent47 Input/Output Ordner/Datei Rekutrsiv erstellen und Java Basics - Anfänger-Themen 8
S Prüfen ob bestimmter Ordner geöffnet ist (Windows XP) Java Basics - Anfänger-Themen 5
D Ordner der Ausgeführten Datei erhalten Java Basics - Anfänger-Themen 4
P newbie- Frage zu Ordner-Projektstruktur Java Basics - Anfänger-Themen 3
L Herunterladbares Java Programm in bestimmten Ordner speicher Java Basics - Anfänger-Themen 3
M Input/Output Ordner erstelen? Java Basics - Anfänger-Themen 12
A Ordner zippen Java Basics - Anfänger-Themen 10
T .jar Datei als Ordner benutzen/ Dateien aus .jar Datei auslesen Java Basics - Anfänger-Themen 3
J Ordner unter Windows Verstecken Java Basics - Anfänger-Themen 2
D Ordner auf Desktop erstellen(Pc unabhängig) Java Basics - Anfänger-Themen 3
M Neuen Ordner im Überverzeichnis erstellen, und dadrin arbeiten Java Basics - Anfänger-Themen 4
I Ordner schnell durchlesen Java Basics - Anfänger-Themen 11
I ZIP Archive erstellen - ich möchte aber nur den jeweiligen Ordner zippen, bekomme ganzen Pfad Java Basics - Anfänger-Themen 1
I Datei schreiben, im Klassen-Ordner Java Basics - Anfänger-Themen 15
P Dateien im Ordner auflisten. Java Basics - Anfänger-Themen 3
V bin und src Ordner Java Basics - Anfänger-Themen 3
M JFS- Ordner von faces-config.xml Java Basics - Anfänger-Themen 2
M JFileChooser Ordner auswählen Java Basics - Anfänger-Themen 5
C src-Ordner in jar-Datei (Eclipse) Java Basics - Anfänger-Themen 4
S Datei ausführen, verschiedene Ordner Java Basics - Anfänger-Themen 2
B Ordner leeren/löschen Java Basics - Anfänger-Themen 5
M Java-Datei in Ordner Kopieren Java Basics - Anfänger-Themen 12
X Wieso mehrere JRE ordner? Java Basics - Anfänger-Themen 8
N Kein Zugriff auf Ordner -> NullPointerException Java Basics - Anfänger-Themen 2
I Dateien in Ordner und Unterordner durchsuchen Java Basics - Anfänger-Themen 18
J Markierte Einträge (Dateien) in JList sollen in einen anderen Ordner verschoben werden. Java Basics - Anfänger-Themen 12
D Compiler-Fehler Klasse wird im selben Ordner nicht gefunden Java Basics - Anfänger-Themen 5
J Markierte Items in einer JLIST in einen Ordner verschieben Java Basics - Anfänger-Themen 2
S Bearbeiting von xml-Datei in src-Ordner möglich?i Java Basics - Anfänger-Themen 5
B res-Ordner für Text- und Bilddateien Java Basics - Anfänger-Themen 23
B Ordner in jar dateien einfügen Java Basics - Anfänger-Themen 4
M Java Eclipse IDE erstellt keinen Bin Ordner. Java Basics - Anfänger-Themen 10
F Kopieren von Ordner sammt inhalt Java Basics - Anfänger-Themen 5
V Ressourcen aus Ordner nutzen Java Basics - Anfänger-Themen 5
W Ordner "auslesen" Java Basics - Anfänger-Themen 18
R Aus jar Ordner lesen Java Basics - Anfänger-Themen 27
F Auf Ordner im selben Verzeichniss zugreifen Java Basics - Anfänger-Themen 3
K Input/Output Verschiedene Ordner für Java u.v.m. Projekte Java Basics - Anfänger-Themen 3
P Problem :Java-Dateien in einem Ordner ablegen Java Basics - Anfänger-Themen 10
S Ordner / Package Struktur bei größerem Projekt? Java Basics - Anfänger-Themen 8
O Erste Schritte Runnable Jar <- Ordner Fehlen Java Basics - Anfänger-Themen 6
J Ordner und Unterordner nach Dateien durchsuchen Java Basics - Anfänger-Themen 7
M Dateipfad: einen Ordner "hoch" Java Basics - Anfänger-Themen 11
M Input/Output Namen der Files aus einem Ordner MIT bestimmten Encoding auslesen? Java Basics - Anfänger-Themen 3
L Größe von Ordner wiedergeben Java Basics - Anfänger-Themen 4
M Applet soll Bilder aus Ordner lesen Java Basics - Anfänger-Themen 9
V .cab Dateien im Win Profil Ordner? Java Basics - Anfänger-Themen 5
eLogic Ordner kopieren/schreiben Java Basics - Anfänger-Themen 2
D Ordner in Eclipse Importieren Java Basics - Anfänger-Themen 6
F Ordner in JAR scannen Java Basics - Anfänger-Themen 3
xehpuk Ordner "Eigene Bilder" ansteuern Java Basics - Anfänger-Themen 3
P Kompelieren von 2 Java Dateien im selben Ordner Java Basics - Anfänger-Themen 13
V Datei in Ordner auslesen -> neuer Ordnername Java Basics - Anfänger-Themen 7
J Dateien aus Ordner auslesen bzw. einlesen Java Basics - Anfänger-Themen 4
G jar datei funktioniert nicht ohne jdom.jar im Ordner Java Basics - Anfänger-Themen 7
H Textdateien in Ordner einlesen - unendlich ? Java Basics - Anfänger-Themen 8
B Datei in mehrere Ordner splitten und wieder zusammenfuegen... Java Basics - Anfänger-Themen 3
B Ordner öffnen (eigener Dateibrowser) Java Basics - Anfänger-Themen 8
F Liste aller Ordner auf einem Laufwerk erstellen? Java Basics - Anfänger-Themen 3
StrikeTom Wie ermittel ich alle dateinamen in einem Ordner Java Basics - Anfänger-Themen 2
H Wie Projekt-Ordner-Pfad ermitteln? Java Basics - Anfänger-Themen 11
S Betriebssystem - Ordner erstellen auf Windows & Linux Java Basics - Anfänger-Themen 3
BleedingSt4r Ordner + Unterordner "auslesen" ? Java Basics - Anfänger-Themen 32
S Ordner erstellen Problem Java Basics - Anfänger-Themen 4
S Ordner umbenennen mit renameTo - mysteriöses Problem Java Basics - Anfänger-Themen 9
T alle Ordner in einem Ordner in JList anzeigen Java Basics - Anfänger-Themen 3
M Ordner Download Java Basics - Anfänger-Themen 11
Developer_X Zugriff auf PC verweigert bei Ordner erstellung, wie zulassen?! Java Basics - Anfänger-Themen 3
Developer_X Java File listet den Ordner, in dem sich die Datei befindet Java Basics - Anfänger-Themen 7
P FTP Ordner löschen Java Basics - Anfänger-Themen 5
Developer_X Java - per Java einen Ordner löschen Java Basics - Anfänger-Themen 9

Ähnliche Java Themen

Neue Themen


Oben