Tworzenie pliku i zapis

0

Witam, mam taki oto kawałek kodu:

 
            try
            {
                if (File.Exists("date.txt") == false)
                {
                    MessageBox.Show("Plik nie istnieje!");
                    File.Create("date.txt"); //<- ustalić coś typu 00-00-0000 
                    string dateIfNotExist = "00-00-0000";
                    TextWriter saveNewFile = new StreamWriter("date.txt");
                    saveNewFile.WriteLine(dateIfNotExist);
                    saveNewFile.Flush();
                    saveNewFile.Close();
                    saveNewFile = null;
                    lastDonationLabel.Text = dateIfNotExist;
                }
                else
                {
                    MessageBox.Show("Plik istnieje!");
                    //Pobieranie daty z pliku
                    TextReader loadFile = new StreamReader(File.Open("date.txt", FileMode.Open));
                    lastDonationLabel.Text = loadFile.ReadToEnd();
                    loadFile.Close();
                }
            }

            catch (IOException ex)
            {
                MessageBox.Show(ex.ToString());
            }

Jeżeli plik istnieje - nie ma problemu. W przeciwnym razie program tworzy nowy plik tekstowy a następnie wyrzuca IOException przed zapisaniem do niego stringa. Nie bardzo wiem dlaczego. Proszę o pomoc.

1

W komunikacie błędu masz napisane że plik jest już używany przez inny proces .
Czyli :

File.Create("date.txt"); 

który zwraca strumień i go powinieneś przekazać do

TextWriter saveNewFile = new StreamWriter("date.txt"); 

Zamiast ściężki

0

Dzięki! Teraz wszystko śmiga.

1 użytkowników online, w tym zalogowanych: 0, gości: 1