J'aimerais enregistrer un fichier, et avec un savefiledialog laisser l'utilisateur choisir la destination.
Voici mon code:
private void menuSave_Click(object sender, EventArgs e) {
Stream myStream;
DlgSave.Filter = "Pacman Files (*.pac)|*.pac|All files (*.*)|*.*";
DlgSave.RestoreDirectory = true;
DlgSave.Title = "Enregistrement";
if (DlgSave.ShowDialog() == DialogResult.OK)
{
if ((myStream = DlgSave.OpenFile()) == null)
{ myStream.Close(); }
else
{ this.MySaveName = this.DlgSave.FileName; }
}
myStream.Close();
MessageBox.Show(this.MySaveName);
SaveGame(This.MySaveName);
timer.Enabled = true;
}
Dans MySaveName j'ai bien la destination complete ( c:\xxxxx)
Je la recupere dans ma fct SaveGame(string SaveLocation)
void SaveGame(string SaveLocation){
// *** Ecriture dans le fichier ***
StreamWriter Fichier;
Fichier = File.CreateText(this.SaveLocation); string Line = "xxx";
Fichier.WriteLine(Line);
Fichier.Close();
}
Des que le programme arrive sur la ligne en rouge il me dit :"The process cannot access the file because it is being used by another process." Donc à mon avis j'oublie de fermer mon stream ou mon fichier quelque part mais pas moyen de trouver ou...
Personne n'a une idée ??
Merci d'avance
