# Filedialog - Dateiname vorbelegen



## schuetzejanett (17. Jul 2007)

Hallo,

möchte in meinem prog eine datei speichern.
Dafü verwende ich den SWT Filedialog.

wie kann ich jetzt das feld Dateiname vorbelegen, wie ich die filter und den pfad vorbelege weiß ich aber wie schaffe ich es auch noch den dateiname vorzubelegen , so das der user nur noch auf ok klicken muss,  er kann ihn natürlich auch #ändern, nur es soll schon was drin stehen.

Geht das?


----------



## L-ectron-X (17. Jul 2007)

Klar geht das.


```
import javax.swing.*;
import java.io.*;

public class JFileChooserTest {
   public JFileChooserTest() {
      JFileChooser chooser = new JFileChooser(System.getProperty("user.dir"));
      chooser.setSelectedFile(new File("Test.txt"));
      chooser.showSaveDialog(null);
   }

   public static void main(String[] args) {
      try {
         UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
      }
      catch(Exception e) {}
      new JFileChooserTest();
   }
}
```


----------



## Roar (17. Jul 2007)

Aber lectron, das ist doch Swing... 



			
				schuetzejanett hat gesagt.:
			
		

> Dafü verwende ich den SWT Filedialog.


----------



## L-ectron-X (18. Jul 2007)

Ups. Stimmt ja. Sorry... 

...déjà vu...


----------



## schuetzejanett (18. Jul 2007)

hallo,

bin noch zur lösuung gekommen,

es gibt die methode setFileName(String value);

mit dem man das ganze vorbelegen kann. Habs bloß  irgendwie übersehen gestern. Hatte wahrscheinlich ein großes Brett vorm Kopf

Danke trotzdem für eure Hilfe.


----------



## seekingone (17. Jan 2008)

Kann ich die zu speichernde Datei festlegen, die Datei die gespeichert werden soll, so dass der Benutzer dies nicht ändern kann?
Ich erstelle zum Beispiel eine Zip-Datei und der Benutzer soll nur noch wählen können wo es diese Datei dann hinspeichern möchte.


----------



## HeRaider (17. Jan 2008)

Den Rückgabewert einfach prüfen mit

```
...
dateiname.equals(path.substring(path.lastIndexOf("\\"), path.length()));
```
Wenn es nicht stimmt Meldung ausgeben und dann den Pfad neu setzen:


```
...
speicherpfad = path.substring(0, path.lastIndexOf("\\")) + dateiname;
```


----------

