Ordner/Dateistruktur in Objekten nachbilden

Status
Nicht offen für weitere Antworten.

KSG9|sebastian

Top Contributor
Hi Leute,

ich steht grad bissl aufm Schlauch. Ich will ne Ordnerstruktur in Objekten nachbilden.
Die Ordner bekomme ich über ne vorhandene Klasse.

Folder#getFolders()
Folder#getPages()
Folder#getLinks()

Ausgehend von nem Root-Ordner kann jeder Ordner wiederum x Ordner, y Dateien und z Links enthalten
Ich will bestimmte Attribute von nem Ordner, ner Datei und nem Link in der neuen Struktur speichern

Folder#getName()
Folder#getTitle()
Folder#getPath()
.
.

Ich will komplett alle Ordner Pages und Links "auf einmal" einlesen und in die neue Struktur überführen. Man muss durch die Ordner navigieren können, das funktioniert über das Attribut Name. In einem Ordner können keine 2 Ordner mit dem gleichen Namen existieren. Es kann jedoch auf der ersten Ebene nen Ordner geben der "Test" heist und auf der 3. Ebene ebenso. Ich hab mir das so überlegt, dass ich nen Controller hab, der die Ebene (den Pfad) speichert auf der ich mich im Moment befinde, so ist es kein Problem ne "Breadcroumb-Navi" zu erstellen und die Navigation kann ich bequem über den Ordnernamen machen.
Ich hab nur leider gar keine Idee wie ich meine Struktur aufbauen soll, und v.a. nicht wie ich alle Ordner auf einmal einlese, ohne nacher die Beziehnung der Ordner (Test ist parent-folder von test2..) u.s.w. verliere.

Habt ihr irgendwelche Anregungen fürn mich ? Welche Klasse soll ich benutzen (Treeset) ?
Ach ja, ein Objekt um die jeweiligen Daten der Ordner zu speichern hab ich schon ;D. Jetzt brauch ich noch ne Möglichkeit, wie ich die eigene Klasse sauber speicher..

MfG Sebastian
 

SebiB90

Top Contributor
erst mal was sind Pages und Links?

mir fällt da grad ein sowas ähnliches gabs schon, ich such mal
 

KSG9|sebastian

Top Contributor
Pages ist ein Objekt der Klasse Page und ein Link eben ein Objekt der Klasse Link. Wie die objekte aufgebaut sind ist völlig egal. Aus den Objekten les ich nur bestimmte daten. Wen es doch interessiert soll sich jetspeed2 source saugen, dort sind die klassen drin
 

KSG9|sebastian

Top Contributor
Hm..ich hab mir das mal angeguckt:
http://www.javaalmanac.com/egs/java.io/TraverseTree.html

Es hilft mir aber nicht wirklich weiter. Das Programm muss ungefähr so funktionieren:

es gibt nen Root-Folder, der hat ne Liste (ArrayList) mit Ordnern. Und jeder dieser Ordner muss wiederum seine Childs speichern, so ne art LinkedList, nur eben nicht mit einem Element sondern mit beliebig vielen.

Hat mir niemand ein gescheites beispiel von "Directory Traversing" ? Google hab ich schon gefragt, aber nix gescheites gefunden.

Bei dem Link hab ich keine Ahnung wass die Methode "process(..)" sein soll.
 
B

Beni

Gast
process( .. ) soll eine eigene Methode sein, in der du irgendwas mit der Datei/Ordner anstellen kannst.

Ich würde die Namen der Ordner/Links/Pages in einem Set (Tree oder Hash ist egal) speichern. Wenn etwas eingefügt werden soll (in einen Ordner), musst du nur kurz in dem Set nachgucken, ob es sowas nicht schon gibt (dem Namen nach). Die Links/Ordner/Pages selbst würd ich in 3 ganz normalen Listen speichern. (Also pro Ordner ein Set und drei Listen).

Zum einlesen: schon mal was von Rekursion gehört? :wink:
Code:
    public static void visitAllDirsAndFiles(File dir,  Ordner parent) {
        if (dir.isDirectory()) {
            Ordner child = new Ordner( dir.getName() ); // <<<<<<<<<<
            parent.addOrdner( child );   // <<<<<<<<<<<<<
 
            File[] children = dir.listFiles();
            for (int i=0; i<children.length; i++) {
                visitAllDirsAndFiles(children[i], child);
            }
        }
    }
So weisst du immer, woher du kommst.
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
_user_q Verknüpfung einer .jar-Datei (liegt z. B. auf dem Desktop) im Autostart-Ordner erstellen? Allgemeine Java-Themen 20
Tobero .jar Dateine aus einem Ordner laden (Java 16) Allgemeine Java-Themen 5
G Datei aus Ordner wählen, ohne den Dateinamen im Pfad angeben zu müssen Allgemeine Java-Themen 4
Zrebna FileUtils.cleanDirectory() - aber einen sub-Ordner "verschonen" Allgemeine Java-Themen 1
M Ordner kopieren Allgemeine Java-Themen 5
B Datei/Ordner auf Server zugreifen/erstellen Allgemeine Java-Themen 2
I Klassen aus Jar-Dateien aus anderem Ordner laden Allgemeine Java-Themen 3
B Dateien / Bilder von "webapp" Ordner bekommen? Allgemeine Java-Themen 1
F Registry Ordner durchlaufen Allgemeine Java-Themen 1
Drachenbauer Wie sorge ich dafür, dass mein Spiel die ini-Datei in der Resourcen-ordner des Projektes schreibt? Allgemeine Java-Themen 5
L File beim Kopieren in einen anderen Ordner umbenennen Allgemeine Java-Themen 6
M Key-File im selben Ordner speichern? Allgemeine Java-Themen 18
R Setting Ordner fehlt Allgemeine Java-Themen 1
J Ordner und Datei Struktur einer War Datei Allgemeine Java-Themen 1
K getResource guckt im Target-Ordner...? Allgemeine Java-Themen 2
P Zum src Ordner einen Projektes navigieren Allgemeine Java-Themen 8
D Ordner commiten mit SvnKit Allgemeine Java-Themen 0
U javax.mail.Folder.list() zeigt nicht alle Ordner Allgemeine Java-Themen 5
D Kopieren von Dateien aus einem Ordner in einen anderen Allgemeine Java-Themen 6
I nach Image Load in ListView, kann Ordner nicht mehr gelöscht werden Allgemeine Java-Themen 1
P JDK installieren Kann man die Ordner in C:\Users\*\AppData\LocalLow\Sun\Java\.... löschen? Allgemeine Java-Themen 3
X Dateien von der Jar zum Ordner kopieren. Allgemeine Java-Themen 4
Ananaskirsche Input/Output Dateien im Ordner Allgemeine Java-Themen 8
A Input/Output Liste der Dateien in einem Ordner in einer Jar Datei erhalten Allgemeine Java-Themen 11
D Ordner auf Desktop erstellen(Pc unabhängig) Allgemeine Java-Themen 5
K NetBeans Ordner bei 'Clean&Build' automatisch in dist Verzeichnis kopieren Allgemeine Java-Themen 0
T Ordner samt Dateien kopieren Allgemeine Java-Themen 11
T Datei Ordner in Binär-Zahlenkette umwandeln Allgemeine Java-Themen 11
M JavaMail Spam-Ordner Allgemeine Java-Themen 2
B Dateien verschwinden aus bin Ordner?! Allgemeine Java-Themen 5
Minonos Einem Programm Zugriff auf bestimmte Ordner geben Allgemeine Java-Themen 5
M Pakete in Ordner Kopieren Allgemeine Java-Themen 7
P Ordner und Unterordner rückwärts durchsuchen Allgemeine Java-Themen 3
B Swing In JAR Ordner durchsuchen Allgemeine Java-Themen 2
B Ordner öffnen mittels Java in Linux-Umgebung Allgemeine Java-Themen 7
H Ordner in Zip integrieren Allgemeine Java-Themen 7
P Input/Output Ordner löschen --> geht nicht Datei --> Ja Allgemeine Java-Themen 6
I Java Ordner kopieren [Error] Allgemeine Java-Themen 6
S Dateien aus src-Ordner lesen Allgemeine Java-Themen 3
E nach dem Ordner suchen, wo .jar datei sich befindet Allgemeine Java-Themen 17
Developer_X Java FTP - Ordner auf Server erstellen Allgemeine Java-Themen 7
S Zugriffschutz auf Ordner Allgemeine Java-Themen 5
E ordner rekursiv durchsuchen Allgemeine Java-Themen 6
E Ordner rekursiv kopieren Allgemeine Java-Themen 8
J Ordner im Archiv (jar) auslesen Allgemeine Java-Themen 12
P Datei aus Ordner wird nicht gelesen Allgemeine Java-Themen 2
4 Java Ordner Allgemeine Java-Themen 27
S auf freigebene Ordner zugreifen Allgemeine Java-Themen 6
F Ordner auslesen und in Editor ausgeben Allgemeine Java-Themen 7
L Ordner in ZipDatei erstellen Allgemeine Java-Themen 3
V Der Ordner von Java ist gelöscht und ich kann es nicht neu instalieren! Allgemeine Java-Themen 2
S Ordner wechseln wie bei chdir Allgemeine Java-Themen 6
D Ordner Verpfadung Allgemeine Java-Themen 19
B ProcessBuilder: kann Ordner im home nicht finden Allgemeine Java-Themen 2
N Dateien in Ordner einsortieren Allgemeine Java-Themen 11
G Ordner für Dateien finden Allgemeine Java-Themen 3
G Globalen Programm-Ordner herausfinden Allgemeine Java-Themen 7
K settings.properties in den src-ordner schreiben Allgemeine Java-Themen 2
D Ordner mit *.properties in classpath ? Allgemeine Java-Themen 5
D eclipse: Zugriff auf Ordner per code Allgemeine Java-Themen 4
S Einen Ordner zurück von der JarDatei Allgemeine Java-Themen 6
G Programm ausführen, sobald Ordner geöffnet? Allgemeine Java-Themen 21
MQue Ordner anlegen Allgemeine Java-Themen 7
B ZIP - Problem mit dem ersten Ordner Allgemeine Java-Themen 2
M JFileChooser: Ordner anlegen Allgemeine Java-Themen 3
J Verschieben ganzer Dateien (und Ordner) Allgemeine Java-Themen 3
Q ||| Nur Dateien einlesen ohne Ordner. Allgemeine Java-Themen 6
I Diverse Files aus Ordner auslesen Allgemeine Java-Themen 10
M Ordner nach neuester Datei durchsuchen Allgemeine Java-Themen 4
D Dateien und ordner ausgabe Allgemeine Java-Themen 5
G Subclipse + svn:ignore - Ordner manuel ignorieren? Allgemeine Java-Themen 2
Y Ordner löschen Allgemeine Java-Themen 2
D Auf Laufwerk bzw. Ordner auf einem Server zugreifen Allgemeine Java-Themen 7
T Ordner überwachen Allgemeine Java-Themen 6
TheJavaKid Ordner in Zip laden Allgemeine Java-Themen 21
D Linux Link wird als Ordner interpretiert? Allgemeine Java-Themen 2
A Alle Ordner durchsuchen und Dateien finden Allgemeine Java-Themen 2
F Alle Files im Ordner nach Dateinamen durchsuchen Allgemeine Java-Themen 28
F Dateien in einem Ordner zählen Allgemeine Java-Themen 15
H Klassen aus einem Ordner zur Laufzeit laden. Allgemeine Java-Themen 6
André B. Sucher erfasst nur Ordner Allgemeine Java-Themen 10
M ganzen Ordner mit URL angeben Allgemeine Java-Themen 4
N Inhalte aller Txts in einem Ordner Addieren Allgemeine Java-Themen 5
N Alledateien in einem Ordner in ein Vector speichern Allgemeine Java-Themen 19
F Ordner erstellen Allgemeine Java-Themen 3
M Bilder-Ordner kann im JAR-File nicht gefunden werden Allgemeine Java-Themen 15
B dynamisches Laden aller Klassen in einem Ordner ?? Allgemeine Java-Themen 5
Zrebna Wieso sollte man Null-Prüfungen nicht mit Optional-Objekten nutzen? Allgemeine Java-Themen 13
B Sent and Receive Funktionen zwischen Objekten ermöglichen? Allgemeine Java-Themen 8
A Objekt aus anderen Objekten machen Allgemeine Java-Themen 8
PCOmega137 Objekten zufällig erzeugte Namen geben Allgemeine Java-Themen 2
T Speichern von Objekten Allgemeine Java-Themen 2
D Serialisierung und Deserialisierung von Objekten - Frageprogramm Allgemeine Java-Themen 4
M Wie kann man eine void Methode mit Variablen von zwei verschiedenen Objekten ausführen? Allgemeine Java-Themen 15
M loeschen von objekten Allgemeine Java-Themen 22
S Parametrisierte jUnit 5-Tests mit eigenen Datentypen/Klassen-Objekten als Test-Parameter Allgemeine Java-Themen 0
F Best Practice Große Anzahl an Objekten speichern und lesen Allgemeine Java-Themen 19
M Array aus Thread Objekten erstellen Allgemeine Java-Themen 2
K Vergleich von Strings von Objekten Allgemeine Java-Themen 4
B Endlosschleife beim Verteilen von Objekten Allgemeine Java-Themen 4

Ähnliche Java Themen

Neue Themen


Oben