Obseved List mit ListView (Dateiliste)

MiMa

Top Contributor
Ich habe mal ne Frage bzüglich Observed Liste welche Dateien als Typ "File" enthält. Wenn ich mit Dateien arbeite liegt es wohl nahe mit dem File-Typ zu arbeiten.
Die Dateien sollen in der ListView nur als Dateien angezeigt werden und mal mit oder ohne Dateiendungen welches im Einstellungenfenster über eine checkbox funktioniert.
Um die Darstellung als Dateiliste zu realisieren, habe ich eine neue Liste erstellt und mit getName neue File Objekte hineingeschrieben.
Bei einer Selektion wird der Pfad dann wieder davor gebastelt damit die Datei auch auf der Festplatte gefunden wird wenn eine Verarbeitung oder Prüfung stattfindet.
Das funktioniert auch alles soweit aber das abschneiden und wieder hinzufügen ist ziemlich tricky und stellt mich schon seit Tagen vor Herausforderungen. Und das suchen von Fehlern ist naja.

Ich würde das gerne auch einfacher realisieren, indem nur eine Oberseved Liste verwendet wird und nur die Darstellung in der ListView geändert wird ohne einen Datenvelrust des DateiPfaded oder Dateinedung in kauf zu nehmen.

Aktuell sehe ich den Wald vor lauter Bäumen nicht.
Hier ist mal eine Methode in der ich die Dateinamen für die ListView Formatiere.

Java:
private void formatiereDateiNamenEndung(ObservableList<File> dateiListeOSL, boolean anzeigenDateiEndung) {
        ObservableList<File> formatierteDateiListe = FXCollections.observableArrayList();

        for (File datei : dateiListeOSL) {
            String formatierterDateiName = anzeigenDateiEndung ? datei.getName() : datei.getName().replaceAll("\\..*", "");
            File formatierteDatei = new File(formatierterDateiName); // Erstelle eine neue Datei mit dem formatierten Namen
            formatierteDateiListe.add(formatierteDatei); // Füge die formatierte Datei zur Liste hinzu
            LOG.info("Datei hinzugefügt: " + formatierterDateiName);
        }
        // Setze die aktualisierte Liste in die ListView
        dateiListeListView.setItems(formatierteDateiListe);
    }

Die Methode getNAme() gibt ja einen String zurück und abgeschnittes ist halt weg.
Ich habe heraus gefudnen das Dateien mit Pfaden wieder dann doch recht einfach wieder zusammengebaut werden können wie
Java:
File neueDatei = new File(einstellungen.getVerzeichnisQuelle, dateiNameOhnePfad)

Daher habe ich aktuell das auch so realisiert das ich mit zwei Listen arbeite. Eine für die ListView und die OrigninalListe für die Veratbeitung.
Wie gesagt ich würde es gerne etwas vereinfachen und würde mich freuen wenn es einen einfacheren Weg geben würde.

Vielen Dank
 

Robert Zenz

Top Contributor
Brauchst du ueberhaupt ein File in der Liste? Wuerde nicht ein einfacher String reichen?

Und du solltest die neue java.nio.file-API verwenden.

Java:
Path verzeichnisQuelle = Paths.get("/some/path");

Path neueDatei = verzeichnisQuelle.resolve(dateiNameOhnePfad);
 

MiMa

Top Contributor
Danke, ich werde die Klassen auf nio umschreiben.
Ich denke das Strings nicht ausreichen werden da ich Dateioperationen, Prüfungen durchführen möchte und Zugriff auf die Datei haben muss.
Auch möchte ich nicht ständing von String nach File und umgekehrt konvertieren wollen.
Um von der 2 Listenverwaltung weg zu kommen und nur mit einer Liste arbeiten zu können, habe ich etwas über CellFactory gefunden.
Vielleicht kann ich das damit lösen?
 

MiMa

Top Contributor
Um den Post hier mal zu aktialisieren wollte ich nur kurz noch mitteilen, da ich das jetzt stark vereinfachen konnte. Der Code ist nicht nur übersichtlicher geworden, sondern auch flexibler und einige MEthoden konnte auch gelöscht werden.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
AmsananKING JavaFX Quiz cant fill List AWT, Swing, JavaFX & SWT 1
L Swing Wert vom Textfield in Array List hinzufügen AWT, Swing, JavaFX & SWT 2
M List Listener AWT, Swing, JavaFX & SWT 37
Q-bert Doppelclick auf einem List item AWT, Swing, JavaFX & SWT 9
H Java FX List<AlbumsBean> in FXML TableView AWT, Swing, JavaFX & SWT 37
J private statische List - Datenbankverbindung AWT, Swing, JavaFX & SWT 2
L JavaFX List oder TableView Größe dynamisch anpassen? AWT, Swing, JavaFX & SWT 4
offi Swing Shuttle List AWT, Swing, JavaFX & SWT 9
A JFace/SWT: ListViewer Inhalt nach Selection in zweitem List Viewer aktualisieren! AWT, Swing, JavaFX & SWT 5
D Swing ArrayList in Jlist/ List oder Array in JList/List AWT, Swing, JavaFX & SWT 5
B Map, Set oder List in GUI ausgeben AWT, Swing, JavaFX & SWT 5
G AWT List AWT, Swing, JavaFX & SWT 4
yvesdaeschle List Control mit "card"-Ansicht AWT, Swing, JavaFX & SWT 7
S AWT AWT.List bug oder feature AWT, Swing, JavaFX & SWT 4
E Keine Ausgabe auf Console und List AWT, Swing, JavaFX & SWT 13
reibi SWT SWT - List - DeSelection Problem AWT, Swing, JavaFX & SWT 5
P Kennt awt.list keine Tastatureingabe? AWT, Swing, JavaFX & SWT 3
E werte aus List auslesen AWT, Swing, JavaFX & SWT 2
S JTree aus List<File> erstellen AWT, Swing, JavaFX & SWT 8
P List in JTextField ausgeben AWT, Swing, JavaFX & SWT 8
S AWT List: Items überschreiben? AWT, Swing, JavaFX & SWT 6
H SWT Zeilenumbruch in List AWT, Swing, JavaFX & SWT 9
M SWT keine Scrollbar bei widgets.List und GridLayout AWT, Swing, JavaFX & SWT 2
M List in JTree umwandeln AWT, Swing, JavaFX & SWT 10
L Swing JList - Warum Vector und nicht List ? AWT, Swing, JavaFX & SWT 4
P List-Einträge auslesen AWT, Swing, JavaFX & SWT 4
S List<String> in JTextArea! AWT, Swing, JavaFX & SWT 4
I List aus einer JList AWT, Swing, JavaFX & SWT 3
G Objekte in SWT List AWT, Swing, JavaFX & SWT 3
S List übertragen in Label? AWT, Swing, JavaFX & SWT 4
S List Elemente AWT, Swing, JavaFX & SWT 4
G Drag And Drop von Component (List, Tree) zum Desktop AWT, Swing, JavaFX & SWT 2
B List, Item makieren per rechtsklick AWT, Swing, JavaFX & SWT 3
L Renderer mit nativen komponenten in tabelle / tree / list AWT, Swing, JavaFX & SWT 4
M Array List in JTree AWT, Swing, JavaFX & SWT 2
G Frage zur List mit chars AWT, Swing, JavaFX & SWT 7
C Menue verschwindet hinter AWT-List Box.wie beheben? AWT, Swing, JavaFX & SWT 3
S List mit mehrfarbiger Beschriftung AWT, Swing, JavaFX & SWT 2
G AWT: List mehrere Spalten. AWT, Swing, JavaFX & SWT 8
O java.awt.list - string ändern AWT, Swing, JavaFX & SWT 2
P Image und Text in einer List anzeigen AWT, Swing, JavaFX & SWT 12
I Farbe bei List und TextArea AWT, Swing, JavaFX & SWT 1
H JavaFX ListView MultipleSelection AWT, Swing, JavaFX & SWT 9
AmsananKING ListView Drag And Drop AWT, Swing, JavaFX & SWT 0
AmsananKING Drag And Drop Filenames Inside A Listview AWT, Swing, JavaFX & SWT 1
D Layout einer scene mit ListView Elementen und Zwei Textfeldern AWT, Swing, JavaFX & SWT 1
TheWhiteShadow JavaFX ListView Problem beim Entfernen von Elementen AWT, Swing, JavaFX & SWT 1
Davee JavaFX ListView = null wenn ich sie in Laufzeit ändern will! AWT, Swing, JavaFX & SWT 16
G Eintrag soll nur einmal in Listview zu sehen sein AWT, Swing, JavaFX & SWT 3
T ListView nach Erweiterung Fehler in CellFactory AWT, Swing, JavaFX & SWT 8
T ListView in TableCell AWT, Swing, JavaFX & SWT 4
MiMa File Dateien im ListView als Name anzeigen? AWT, Swing, JavaFX & SWT 6
B JavaFX ListView in Kombination mit TextField AWT, Swing, JavaFX & SWT 5
B JavaFX das richtige ListView filtern AWT, Swing, JavaFX & SWT 2
B Dynamische ListView-Größe, die bei Fenstergrößenänderung sich anpasst AWT, Swing, JavaFX & SWT 19
S JavaFX ListView Inhalte während Laufzeit ändern AWT, Swing, JavaFX & SWT 23
karlmasutra JavaFX ListView zeigt Einträge nicht an AWT, Swing, JavaFX & SWT 11
B Textfelder in einer ListView ausgeben AWT, Swing, JavaFX & SWT 13
J CheckBoxListCell auf click event in listView reagieren AWT, Swing, JavaFX & SWT 1
karlmasutra JavaFX Listenelemente bearbeiten Listview AWT, Swing, JavaFX & SWT 1
D JavaFX Listview mit observableList AWT, Swing, JavaFX & SWT 6
MiMa Selektion aus einer ListView AWT, Swing, JavaFX & SWT 5
N Frage zu ListView AWT, Swing, JavaFX & SWT 11
L JavaFX ListView Größe anpassen AWT, Swing, JavaFX & SWT 1
F JavaFX ListView füllen in Controller Class AWT, Swing, JavaFX & SWT 12
F JavaFX In SampleController ObservableList zu ListView hinzufügen AWT, Swing, JavaFX & SWT 0
D JavaFX ListView & TabelView AWT, Swing, JavaFX & SWT 9
F JavaFX Custom ListView erstellt ghost Element AWT, Swing, JavaFX & SWT 3
F JavaFX Von Datenbank in ListView AWT, Swing, JavaFX & SWT 4
F JavaFX ListView Zeilenhöhe AWT, Swing, JavaFX & SWT 2
M Auswahl aus einer ListView AWT, Swing, JavaFX & SWT 3
F Icons neben Text in Listview setzen AWT, Swing, JavaFX & SWT 2
K ListView right click AWT, Swing, JavaFX & SWT 1
Y Listview Textfield vergrößern, Schrift anpassen AWT, Swing, JavaFX & SWT 0
C Liste - ListView wird nicht angezeigt AWT, Swing, JavaFX & SWT 15
L JavaFX ListView oder TableView Style überschreiben? AWT, Swing, JavaFX & SWT 6
thobren listview seclect abschalten AWT, Swing, JavaFX & SWT 1
NoXiD Java FX JFX 2 DnD ListView AWT, Swing, JavaFX & SWT 3
T [JavaFX 2.0] ListView editieren AWT, Swing, JavaFX & SWT 2

Ähnliche Java Themen


Oben