Zum Inhalt springen

Dateien im FileDialog ausblenden


TDM

Empfohlene Beiträge

Hallo,

ich suche eine Möglichkeit bestimmte Dateien im FileDialog (java.awt) auszublenden.

Dabei sollen alle Dateien die keine csv-Dateien (.csv Files) sind nicht angezeigt werden.

Hab zwar grad was in der API über FilenameFilter gelesen - das ist allerdings nicht was ich Suche (oder geht nicht richtig).

Ich möchte in der Dateitypauswahl die .csv Dateien mit eintragen sodass nur csv (und evtl später alle)-Dateien gefiltert und angezeigt werden.

Jetzt wollt ich Fragen, ob es da eine Möglichkeit oder Alternativen gibt.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hab zwar grad was in der API über FilenameFilter gelesen - das ist allerdings nicht was ich Suche (oder geht nicht richtig).

Da tippe ich eher auf "funktioniert nicht richtig". Denn eigentlich tut dieser Filter genau das, was Du vorhast. Kannst Du bitte mal den Code posten?

EDIT: OK. Kommando zurück. Anscheinend funktioniert das nicht auf Windows-Kisten. Daher mein Tip: Es lebe Swing.

Ich möchte in der Dateitypauswahl die .csv Dateien mit eintragen sodass nur csv (und evtl später alle)-Dateien gefiltert und angezeigt werden.

Wie das im AWT funktioniert, kann ich Dir leider nicht verraten.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Code konnt ich mir noch nicht überlegen, weil ich wie gesagt nicht weis wie ich die anderen Dateien ausblenden soll... (Müsste vor show gesetzt werden - braucht aber einen File- und Dir-Namen - gibts aber erst nach dem Dialog O.o)

Ich würde ja auch FileChooser nehmen, aber im Swing find ich max. das package filechooser - Klasse wird dazu keine angezeigt auch in der API steht max. ein FileChooserUI. Müsst ich den dann in eine eigene Klasse implementieren oder wie ?

Link zu diesem Kommentar
Auf anderen Seiten teilen

Ich würde ja auch FileChooser nehmen, aber im Swing find ich max. das package filechooser - Klasse wird dazu keine angezeigt auch in der API steht max. ein FileChooserUI. Müsst ich den dann in eine eigene Klasse implementieren oder wie ?

Wenn du Swing nutzen kannst, nimm den JFileChooser ;) Die Beschränkung der Anzeige auf bestimmte Dateitypen setzt du mit dessen Methode um.

Grüße..

..[TDC]azett ;)

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hier mal ein (unsauberes) Beispiel aus der JavaAPI:

JFileChooser chooser = new JFileChooser();

    // Note: source for ExampleFileFilter can be found in FileChooserDemo,

    // under the demo/jfc directory in the JDK.

    ExampleFileFilter filter = new ExampleFileFilter();

    filter.addExtension("jpg");

    filter.addExtension("gif");

    filter.setDescription("JPG & GIF Images");

    chooser.setFileFilter(filter);

    int returnVal = chooser.showOpenDialog(parent);

    if(returnVal == JFileChooser.APPROVE_OPTION) {

       System.out.println("You chose to open this file: " +

            chooser.getSelectedFile().getName());

    }

Vielleicht wird's jetzt deutlicher. :D

Link zu diesem Kommentar
Auf anderen Seiten teilen

Wenn du Swing nutzen kannst, nimm den JFileChooser ;) Die Beschränkung auf bestimmte Dateitypen setzt du mit dessen Methode addChoosableFileFilter(FileFilter filter) um.

Ich hab grad in den Ordner von javax.swing geschaut und da nach der classe gesucht ... ist das normal das die nicht da ist oder ist die wo anders?

Link zu diesem Kommentar
Auf anderen Seiten teilen

Gut... ich hab das soweit hingekriegt.

Hier der Ausschnitt:


javax.swing.filechooser.FileFilter filter = new javax.swing.filechooser.FileFilter() {

											public boolean accept(File file){

											String suffix = FileInputOutputFactory.getSuffix(objectID);

												return ((file.toString().endsWith(suffix + FILE_TYP)) | (file.isDirectory()));

											}

											public String getDescription(){

												return getSuffix(objectID) + FILE_TYP;

											}

										};	

JFileChooser fcLoad = new JFileChooser();

fcLoad.setFileFilter(filter);

int dialogResult = fcLoad.showOpenDialog(mainwindow);

String fileName;

if (dialogResult == JFileChooser.APPROVE_OPTION){

	fileName = fcLoad.getSelectedFile().getPath();

}

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...