JFileChooser Abfangen des DateiTypen möglich??

MarioK

Aktives Mitglied
Hallo Gemeinschaft,
ist es generell möglich, wenn der Benutzer über ein Menu ein JFileChosser showSaveDialog bekommt, denn vom Benutzer gewählten DateiTypen abzufangen ??? Wenn ja wie ...

In meinem JFileChooser hat der Benutzer die Wahl zwischen ".xml" und "Alle Dateien" anzeigen. Nur ich möchte halt wenn er ".xml" auswählt, dass nur dann die Dateien als .xml gespeichert werden. Und bei der Auswahl von "Alle Dateien" kann der Benutzer alle anderen DateiEndungen(typen) eingeben (zB Beispiel.edd usw).

mit
Code:
File file = jfc.getSelectedFile();
in Verbindung mit
Code:
if(!meinSelbstGeschriebenerFilter.accept(file))
kam ich nicht sehr weit. Vielleicht habt ihr da ein Besipiel oder einen Ansatz für mich??
 

L-ectron-X

Gesperrter Benutzer
Weiß nicht, ob ich dich jetzt richtig verstanden habe. Vielleicht so:
Java:
if(jfc.getSelectedFile().getName().endsWidth(".xml")) {
   //mit .xml Extension speichern
}
 

MarioK

Aktives Mitglied
Weiß nicht, ob ich dich jetzt richtig verstanden habe. Vielleicht so:
Java:
if(jfc.getSelectedFile().getName().endsWidth(".xml")) {
   //mit .xml Extension speichern
}

mit diesem frage ich doch ab, wenn der Benutzer eine File ausgewählt hat.
Im beigefügtem Bild habe ich das mal gekennzeichnet. Also wenn der Bentzer dann seinen Dateinnamen eingibt, soll das bei dieser Auswahl automatisch als .xml gespeichert werden, wählt dagegen der Benutzer "Alle Dateien" aus, kann der Benutzer jeden Dateiendung benutzen.
So in der Form, wenn es das gibt : jfc.getDateityp das wäre eine super Sache.
Das Abspeichern an sich habe ich schon, mir fehlt nur noch die if Anweisung. Warum ich diese Abfrage möchte, ist, wenn der Benutzer .xml wählt dann wird auch als .xml gespeichert, wenn er was anderes wählt wird als ByteStrom gespeichert.

Ich hoffe das ich es jetzt verständlich rüber gebracht habe.
 

Anhänge

  • Unbenannt-1.jpg
    Unbenannt-1.jpg
    20,6 KB · Aufrufe: 31

Dit_

Bekanntes Mitglied
Du könntest FileFilter setzen:

Java:
JFileChooser jc = new JFileChooser(favPath);
        jc.setFileSelectionMode(JFileChooser.FILES_ONLY);//<-- !
        jc.setDialogTitle("Wähle Textdatei aus...");
        jc.setFileFilter(new FileFilter() {
            
            @Override
            public String getDescription() {
                return "Textdatei (*.txt)";
            }
            
            @Override
            public boolean accept(File f) {
                return f.getName().toLowerCase().endsWith(".txt");
            }
        });
 

MarioK

Aktives Mitglied
nein, dass meinte ich nicht ... einen FileFilter habe ich schon gesetzt ...
also hier mal der Code: man kann doch zB be Photoshop auch auswählen ob du die Datei als .jpg oder .psd usw speichern möchtest und dann speichert auch Photoshop, wenn du .jpg gewählt hast, die Datei als .jpg und nicht als ´zB .txt Datei. Und um dieses Abfangen geht es. Bei mir ist es nur kürzer ... du wählst .xml dann führe das aus wie im Code stehend, du wählst "Alle Dateien" dann führe das aus wie im Code sthend ...
Java:
final JFileChooser jfc = new JFileChooser();
				XMLFileFilter xmlFileFilter = new XMLFileFilter();
		        jfc.setFileFilter(xmlFileFilter);
				if (jfc.showSaveDialog(save) == JFileChooser.APPROVE_OPTION) {
					if(jfc.getFileSelectionMode() == 1){					//<---- das suche ich if(jfc.getSelectedDatentyp
						PunkteToXML meinePunkte = new PunkteToXML(kreise);
						PunkteXMLWrite meineDB = new PunkteXMLWrite();						
						try {
							File file = jfc.getSelectedFile();
							//wenn der Benutzer keine Dateiendung oder eine falsche
							//angibt, wird .xml angehängt
							if(!xmlFileFilter.accept(file)){
								String path = jfc.getSelectedFile().getPath();
								path = path + ".xml";
								file = new File(path);
							}
							meineDB.writePunkteToXML(meinePunkte, file);
						} catch (JAXBException e1) {
							e1.printStackTrace();
							System.out.println("Fehler Auslesen");
						}
					}																	
					else{			
						FileOutputStream fos;
						ObjectOutputStream oos = null;
						File file = jfc.getSelectedFile();
						try {
							fos = new FileOutputStream(file);
							oos = new ObjectOutputStream(fos);
						} catch (FileNotFoundException e2) {
							e2.printStackTrace();
						} catch (IOException e1) {
							e1.printStackTrace();
						}
				
						try {
							oos.writeObject(kreise);
						} catch (IOException e1) {
							e1.printStackTrace();
						}
				
						try {
							oos.close();
						} catch (IOException e1) {
							e1.printStackTrace();
						}
					}
				}
 

MarioK

Aktives Mitglied
also gemäß der API gibt es wohl keine solche Möglichkeit, deswegen lasse ich jetzt die FileFilter weg und nehme die Methode von L-ectron-X...
Java:
if(jfc.getSelectedFile().getName().endsWidth(".xml")) {
   //mit .xml Extension speichern
}

ist erstmal der sicherste Weg und geht auch. Aber trotzdem das muss doch irgendwie gehen. Photoshop und Co können das doch auch...
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
Tommy135 JFileChooser ist sehr langsam AWT, Swing, JavaFX & SWT 13
T JFileChooser ist Englisch und bleibt Englisch und bleibt Englisch... AWT, Swing, JavaFX & SWT 15
M Swing jFileChooser Header viewTypeDetails setFont AWT, Swing, JavaFX & SWT 0
I JFileChooser mit System L&F bei anderem L&F der eigtl. Anwendung AWT, Swing, JavaFX & SWT 0
Meeresgott AWT JFileChooser bestimmte Ordner anzeigen AWT, Swing, JavaFX & SWT 16
S Swing JFileChooser best. Ordner wie Dateien behandeln AWT, Swing, JavaFX & SWT 4
H Swing JFileChooser für nicht existierendes Unterverzeichnis AWT, Swing, JavaFX & SWT 3
javampir Swing Anzeige der FileFilter im JFileChooser AWT, Swing, JavaFX & SWT 0
L JFileChooser Datentyp Unterscheidung AWT, Swing, JavaFX & SWT 6
K JFileChooser NullPointerException AWT, Swing, JavaFX & SWT 7
H JFileChooser Dateinamen vorgeben (Save Dialog) AWT, Swing, JavaFX & SWT 9
Neumi5694 Swing JFilechooser - Detailansicht AWT, Swing, JavaFX & SWT 0
M JFileChooser Look and Feel AWT, Swing, JavaFX & SWT 2
T JFileChooser Rahmenfarbe ändern AWT, Swing, JavaFX & SWT 1
K Pfad mit JFileChooser ausgeben lassen AWT, Swing, JavaFX & SWT 7
C JFileChooser hängt bei Ausführung mit Terminal AWT, Swing, JavaFX & SWT 2
T Swing JFileChooser und FileView AWT, Swing, JavaFX & SWT 4
M Einzelne Ordner im JFileChooser ausgrauen? AWT, Swing, JavaFX & SWT 4
H Swing JFileChooser inline editing AWT, Swing, JavaFX & SWT 4
D JFileChooser anpassen AWT, Swing, JavaFX & SWT 5
AssELAss Verzeichnis JFileChooser aktualisieren AWT, Swing, JavaFX & SWT 0
A JFileChooser Datei speichern AWT, Swing, JavaFX & SWT 4
A Datei weiterverwenden mit JFileChooser AWT, Swing, JavaFX & SWT 6
T Importer-Auswahl im JFileChooser AWT, Swing, JavaFX & SWT 3
N JFileChooser bzw. FileDialog Problem AWT, Swing, JavaFX & SWT 10
A Swing JFileChooser - Größenänderung nach Aufruf von showOpenDialog() AWT, Swing, JavaFX & SWT 15
D Serverdirectory auf Client browsen mit JFileChooser AWT, Swing, JavaFX & SWT 7
F icon aus exe auslesen mithilfe des JFilechooser ? AWT, Swing, JavaFX & SWT 4
C JFileChooser und Netzwerk Laufwerke AWT, Swing, JavaFX & SWT 4
Iron Monkey JFileChooser - Drag and Drop AWT, Swing, JavaFX & SWT 5
J JFileChooser - Datei speichern AWT, Swing, JavaFX & SWT 7
M Element aus JList eines JFileChooser entfernen AWT, Swing, JavaFX & SWT 3
P JFileChooser mit verschidene Endungen AWT, Swing, JavaFX & SWT 12
S Swing Ordner im JFileChooser auswählen AWT, Swing, JavaFX & SWT 2
C JFileChooser bringt parent durcheinander AWT, Swing, JavaFX & SWT 2
N JFileChooser mit Dateinamenvorgabe AWT, Swing, JavaFX & SWT 9
S JFileChooser GTK (Ubuntu) "hässlich" AWT, Swing, JavaFX & SWT 2
A Swing JFileChooser mit modifiziertem Kontextmenü AWT, Swing, JavaFX & SWT 4
S JFileChooser öffnet den falschen Ordner AWT, Swing, JavaFX & SWT 4
A Swing JFilechooser zeigt verzeichnisse nicht an AWT, Swing, JavaFX & SWT 2
A Swing JFileChooser - Anzeige in Echtzeit filtern AWT, Swing, JavaFX & SWT 10
M JFileChooser umbenennen verbieten AWT, Swing, JavaFX & SWT 4
Helgon JFileChooser öffnet sich 2x AWT, Swing, JavaFX & SWT 12
K JFileChooser mit Zusatzfunktionen AWT, Swing, JavaFX & SWT 8
GUI-Programmer JFilechooser, mehrere Datein selektieren und Reihenfolge (2) AWT, Swing, JavaFX & SWT 8
V JFileChooser auf Mac und Netzwerkordner AWT, Swing, JavaFX & SWT 2
B JFileChooser breite der Spalten? AWT, Swing, JavaFX & SWT 5
M JFileChooser setCurrentDirectory() - Verzeichnis relativ zum Code/binary AWT, Swing, JavaFX & SWT 14
P Swing Dateinamen im JFileChooser vorschlagen AWT, Swing, JavaFX & SWT 11
T Swing JFileChooser --> Desktop und Laufwerke im "Suchen in" - Drop Down AWT, Swing, JavaFX & SWT 3
N JFileChooser - Keine Funtkion AWT, Swing, JavaFX & SWT 13
T JFileChooser - "Öffnen-Button" aktivieren/deaktivieren möglich??? AWT, Swing, JavaFX & SWT 2
jueki Aktuell eingestellten Filter aus einem JFileChooser abfragen. AWT, Swing, JavaFX & SWT 5
F Swing JFileChooser - Dateinamen nicht editierbar machen AWT, Swing, JavaFX & SWT 8
I Fehler bei JFileChooser AWT, Swing, JavaFX & SWT 2
K JFileChooser mehrere Dateien markieren ohne STRG AWT, Swing, JavaFX & SWT 4
Ivan Dolvich [Linux] JFileChooser sieht komisch aus... AWT, Swing, JavaFX & SWT 12
M Zurück-Button in JFileChooser AWT, Swing, JavaFX & SWT 9
N JFileChooser AWT, Swing, JavaFX & SWT 4
D Problem mit JFileChooser -> Daten werden mit anführungsstriche in JTable geschrieben AWT, Swing, JavaFX & SWT 8
S JFileChooser Dateiname Autovervollständigung AWT, Swing, JavaFX & SWT 2
B JDialog über JFileChooser anzeigen AWT, Swing, JavaFX & SWT 6
I Swing JFileChooser '\' im Pfad... AWT, Swing, JavaFX & SWT 2
K Swing JFileChooser zum Speichern - FileFilter AWT, Swing, JavaFX & SWT 2
M Swing Execption beim JFileChooser AWT, Swing, JavaFX & SWT 4
kodela Swing JFileChooser und die Datei-Extension AWT, Swing, JavaFX & SWT 3
jueki eigenen Button in JFileChooser einfügen AWT, Swing, JavaFX & SWT 7
alderwaran jFileChooser showSaveDialog, dateinamen werden mit pfadnamen überschrieben beim navigieren AWT, Swing, JavaFX & SWT 1
B Swing Suche JFileChooser zum Speichern AWT, Swing, JavaFX & SWT 2
Iron Monkey JFileChooser DIRECTORIES_ONLY AWT, Swing, JavaFX & SWT 4
Semox Swing JFileChooser: Problem Approve oder Cancel abzufangen AWT, Swing, JavaFX & SWT 7
H JTree - nach Auswahl aus JFileChooser wird nur der erste Knoten angezeigt AWT, Swing, JavaFX & SWT 3
kodela Sicherheitsabfrage mit JFileChooser AWT, Swing, JavaFX & SWT 2
DARK_ZERATO2 jFileChooser AWT, Swing, JavaFX & SWT 4
G JFileChooser Problem AWT, Swing, JavaFX & SWT 4
G Swing JFileChooser Event für neue Directory? AWT, Swing, JavaFX & SWT 5
P JFileChooser AWT, Swing, JavaFX & SWT 2
M Swing JFileChooser und JFrame AWT, Swing, JavaFX & SWT 5
G Swing JFileChooser in einem JPanel? AWT, Swing, JavaFX & SWT 3
J JFileChooser Dateiauswahl beim Tippen einschränken AWT, Swing, JavaFX & SWT 3
M Swing JFileChooser mit Windows 7 AWT, Swing, JavaFX & SWT 8
R JFileChooser - Initiales Verzeichnis auswählen AWT, Swing, JavaFX & SWT 8
brainray JFileChooser - es sollen nur Ordner wählbar sein AWT, Swing, JavaFX & SWT 2
T JFileChooser Problem AWT, Swing, JavaFX & SWT 3
N Mit JFileChooser ein Verzeichnis auswählen AWT, Swing, JavaFX & SWT 7
M Swing JFileChooser und versteckte Ordner AWT, Swing, JavaFX & SWT 2
F jFileChooser verwenden AWT, Swing, JavaFX & SWT 4
M Swing ImageIcon über JFileChooser einbinden AWT, Swing, JavaFX & SWT 4
F JFileChooser mal wieder AWT, Swing, JavaFX & SWT 2
ARadauer Swing JFileChooser mit Bildvorschau AWT, Swing, JavaFX & SWT 5
H Swing Dateiauswahldialog mit JFileChooser funktioniert unzuverlässig AWT, Swing, JavaFX & SWT 11
G Swing JFileChooser nur in Verzeichnis+Unterverzeichnisse AWT, Swing, JavaFX & SWT 5
K Swing JFileChooser AWT, Swing, JavaFX & SWT 6
M JFileChooser einschränken AWT, Swing, JavaFX & SWT 3
L JFileChooser braucht lang zum öffnen AWT, Swing, JavaFX & SWT 2
S NullPointerException bei JFileChooser AWT, Swing, JavaFX & SWT 8
M JFilechooser defaultdirectory AWT, Swing, JavaFX & SWT 5
C JFilechooser this.setAlwaysOnTop AWT, Swing, JavaFX & SWT 2
G JFileChooser - erkennen v. existierenden Dateien ohne Endung AWT, Swing, JavaFX & SWT 1
N JFilechooser File auslesen AWT, Swing, JavaFX & SWT 10

Ähnliche Java Themen


Oben