JFileChooser Dateinamen vergeben

a400

Mitglied
Hallo,

folgendes Problem hab ich, ich hab mir eine Methode zum speichern geschrieben, diese liest

ein paar Textzeilen aus und speichert sie in einem file. So, nun hab ich mir dazu diesen

JFileChooser geholt und versuche nun zu erreichen, dass man auch mehrere Files speichern

kann, irgendwo mache ich da einen Fehler in der Prozedur, kann mir jemand sagen, wie man

das elegant löst, so das nicht nur eine Datei immer mit dem selben Namen gespeichert werden

kann und somit die vorhandene Datei ersezt wird?

Code:
//
private String filename = ("save.txt");
//
//

//speichermethode
//
 static void save( String filename )
	{
	  try
	  {
		FileOutputStream file = new FileOutputStream( filename );
		ObjectOutputStream o = new ObjectOutputStream( file );
		o.writeObject(textfeld.text1());
		o.writeObject(textfeld.text2());
		o.close();
	  }
	  catch ( IOException e ) { System.err.println( e ); }
	}
//
//

//speicherdialog
//
void dialogsave()
	{
	 JFileChooser fileChooser = new JFileChooser(c:/);
	 int Antwort = fileChooser.showSaveDialog(this);
	 if(Antwort == JFileChooser.CANCEL_OPTION )
	  JOptionPane.showMessageDialog(null, "Es konnte nichts gesichert werden");
	 else 
		save(filename);
	  
	}
//
//
// ladendialog
void dialogladen()
	{
	 JFileChooser fileChooser = new JFileChooser("c:/");
	 int benutzerAntwort = fileChooser.showOpenDialog(this);
	 if(benutzerAntwort == JFileChooser.CANCEL_OPTION )
	  JOptionPane.showMessageDialog(null, "Abbruch durch User!");
	 else 
		laden(filename);
		File a = fileChooser.getSelectedFile();
	}
//
//
//ladenmethode
//
 static void laden( String filename )
	{
	  try
	  {
		FileInputStream file = new FileInputStream( filename );
		ObjectInputStream o = new ObjectInputStream( file );
		Vector vec = (Vector) o.readObject();
		String text1 = (String) o.readObject();
		String text2 = (String) o.readObject();
		System.out.println(text1);
		System.out.println(text2);
		o.close();
	  }
	  catch ( IOException e ) { System.err.println( e ); }
	  catch ( ClassNotFoundException e ) { System.err.println( e ); }
	}
wie kriege ich hier eingebaut, dass nicht nur unter save.txt gespeichert werden kann,

sondern auch unter einem beliebigen Dateinamen, den der User eingibt?
Danke für eure Hilfe
 
So müsste es Funtionieren

Code:
//speicherdialog
//
void dialogsave()
{
     JFileChooser fileChooser = new JFileChooser(c:/);
     int Antwort = fileChooser.showSaveDialog(this);
     if(Antwort == JFileChooser.CANCEL_OPTION )
          JOptionPane.showMessageDialog(null, "Es konnte nichts gesichert werden");
     else 
          save(fileChooser.getSelectedFile().getPath());  //ermitteln des FileObjectes vom User eingegeben
}
//
//
 
yo, danke so klappt es, allerdings bleibt da noch das Problem, dass ich dann ja die Datei auch wieder Laden will, wie komm ich denn da an den gwünschten bzw. gewählten Dateinamen dran?
 
Zurück