# JTree und Dateisystem



## foxy (2. Jul 2007)

Sers Leute

mal eine frage, gibt es eine classe, die mir mein Dateisystem bereitstellt, sodass ich das in einem JTree anzeigen kann?

Weil ich kann ja nicht jedesmal durch das komplette dateisystem laufen

lg


----------



## SlaterB (2. Jul 2007)

wieso nicht? wenn du es nicht machen würdest müsste es Java selber machen,
da ist also keine Zeit zu sparen,

und bei diesem mehrstufigen Vorgang gibt es so viele Varianten, Darstellungdetails usw.,
dass es durchaus verständlich ist, dass sowas nicht fertig vorhanden ist,
also ich glaube jedenfalls dass das nicht da ist 

schnell selbst gemacht mit ner Rekursion, File, listFiles() usw.


----------



## foxy (2. Jul 2007)

ja aber dann sollte man das wenichstens eingrenzen, das z.b. nur die folder und dateien aufgelistet werden, wo ich gerade drauf drücke

vorallem kann man das dann ja nicht OS-übergreifend machen, da ich ja überall anders durchlaufen muss... vorallem bei windows kann man nur ein DS durchlaufen uf einer platte, wie soll ich verschiedene festplatten anzeigen ^^ und und und  fragen über fragen


----------



## SlaterB (2. Jul 2007)

also es gibt ja auf jeden Fall den JFileChooser, falls du den nicht kennst,
da muss ja auch irgendeine Logik hinterstehen, die man klauen könnte


----------



## foxy (2. Jul 2007)

Jo sicher den kenn ich ... genau das meinte ich, das müsste es ja schon eine fertige klasse geben, bei der auch die geschw UND auch OS unabhängig ist

also wenn wer weis wo ich das nachlesen kann wäre nett 

lg


----------



## Beni (2. Jul 2007)

Im JFileChooser wird die "FileSystemView" verwendet. Damit kann man aber auch nicht alle Dateien auf einen Schlag abfragen. Deinen Baum musst du trotzdem "lazy" aufbauen.
Das geht leichter als du vielleicht denkst: wird ein Knoten zu seinem Inhalt befragt, weisst du, dass er angezeigt wird. Solange ein Knoten nicht befragt wird, lässt du ihn in Ruhe (und baust erst garkeine Kinder für ihn zusammen!).

Mit einem eigenen TreeCellRenderer kannst du sogar das System-Icon der Dateien anzeigen! Vielleicht kann dir dieser Beitrag in unserer FAQ auch noch ein bisschen helfen.


----------



## Loep (9. Jul 2007)

Hi,

erstmal meine spontan eingefallene Frage:
ich weiß wie ich mitm TreeCellRenderer die Icons ändern kann, aber wie/woher bekomm ich die Standard-Symbole des OS?

Und meine eigentliche Frage:
wenn ich rekursiv per listFiles() nen JTree aufbau und das Programm lokal starte, dann sieht alles fein alphabetisch aus. Starte ich das Programm aber auf einem Netzwerklaufwerk, dann ist keine Sortierung mehr erkennbar. Woran liegt das?


----------



## m@nu (9. Jul 2007)

die systemsymbole bekommst du auch über die FileSystemView. (wie in der FAQ die Beni erwähnt hat)


----------

