logo elektroda
logo elektroda
X
logo elektroda
REKLAMA
REKLAMA
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

Jak zamknąć plik po operacjach w VC++ i przepisać ostatnią linię?

FATIL 03 Cze 2011 17:03 1059 6
REKLAMA
  • #1 9573195
    FATIL
    Poziom 10  
    Posty: 19
    Witam, wczytuje plik, zapisuję go jako inny i niby wszystko w porządku tylko jak zrobić żeby plik zamkną się po wykonaniu wszystkich operacji?

    {
    	
      String^ fileName = OpenDialog->FileName ;
       StreamReader^ din = File::OpenText(fileName);
       String^ str;
       int count = 0;
       String^ fileName2 = "aab.txt";
    	StreamWriter^ sw = gcnew StreamWriter(fileName2);
       while ((str = din->ReadLine()) != nullptr) 
       {  sw->Flush();
          sw->WriteLine(str);
          count++;
       
       }
    	
     
    
    	}


    PS>program nie przepisuje mi ostatniej linijki ;)
  • REKLAMA
  • REKLAMA
  • REKLAMA
  • #5 9573448
    FATIL
    Poziom 10  
    Posty: 19
    pomogło ;), jakk uratować ostatnią linijke od kasowania ;P

    Dodano po 3 [minuty]:

    nie działa jednak... ;/
  • REKLAMA
  • Pomocny post
    #6 9573840
    Dżyszla
    Poziom 42  
    Posty: 7077
    Pomógł: 1095
    Ocena: 226
    a zamykasz oba strumienie? I nie wiem, czy przypadkiem przed zamknięciem zapisu nie trzeba wymusić zapisu (flush)
  • #7 9574565
    FATIL
    Poziom 10  
    Posty: 19
    działa ;P DZIĘKUJE!

Podsumowanie tematu

LABEL_AI_GENERATED
W dyskusji poruszono problem zamykania plików po operacjach w VC++. Użytkownik próbował zapisać plik, ale napotkał trudności z zamknięciem strumieni oraz z brakiem zapisu ostatniej linii. Ostatecznie rozwiązaniem okazało się zamknięcie obu strumieni (StreamReader i StreamWriter) oraz wymuszenie zapisu (flush) przed ich zamknięciem, co pozwoliło na poprawne zapisanie wszystkich linii, w tym ostatniej.
Podsumowanie AI na podstawie dyskusji. Może zawierać błędy.
REKLAMA