Veröffentlicht 12. April 200619 j 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.
12. April 200619 j 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.
12. April 200619 j Autor 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 ?
12. April 200619 j 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
12. April 200619 j 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.
12. April 200619 j Autor 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?
12. April 200619 j Autor Ach... das ding heißt JFileChooser ?! kein wunder dass ich die klasse nicht find :floet:
12. April 200619 j Autor 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(); }
12. April 200619 j Ach... das ding heißt JFileChooser ?! kein wunder dass ich die klasse nicht find :floet:Dicker hab ich das "J" nicht gekriegt, sorry :bimei
Archiv
Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.