Dlaczego nie tworzy się plik o takiej nazwie ?

0

system("cls");
osoba.dodaj();

   {
  fstream Plik;
  Plik.open("Spis.txt",ios::out| ios::in);
     if(Plik.good()==true)
     {Plik.close();
     };
     cout<<"\n\nPlik został zapisany\n\n";
  }
0
 ofstream plik( "Spis.txt" ); 
0

Dziękuję pomogło ;)
Lecz nic się w tym pliku nie zapisuje :(

0

A co sie ma zapisywać skoro nic w nim nie zapisujesz?

0

Zapisuję do niego imie nazwisko itd osób bo to książka telefoniczna.
to wszystko jest zapisane w voidzie i nie wiem jak mam z niego to wyciągnąć.

0

Pokaż kod bo my też nie wiemy...

0
{case 1: 
       cout<<"ok";
       break;
        
       case 2:
       cout<<"ok\n";
       
       system("cls");
       osoba.dodaj();
       
       {
      fstream Plik;
      Plik.open("Spis.txt",ios::out| ios::in);
         if(Plik.good()==true)
         {Plik.close();
         };
      }

To jest kawałek kodu gdzie powinien sie tworzyć plik i powinno się zapisać się w nim to co jest w void spis::dodaj() lecz plik się nie tworzy

1

No ale to co mówisz nie jest prawdą! W kodzie masz:

fstream Plik;
Plik.open("Spis.txt",ios::out| ios::in);
if(Plik.good()==true){
    Plik.close();
}

Czyli:

  • otwórz plik
  • jeśli sie udało to zamknij
    Nie ma tam ani linijki kodu związanej z pisaniem do pliku.
0

To jak mam coś zapisać do tego pliku?

0

Powinno tam być
Plik<<imie<<endl;
itd...
Ale wpisywałem tak i też nie działa bo wyskakuje że imie nie jest zadeklarowane, a przecież jest.
A tak w ogóle to ten plik sie nie tworzy.

0

plik << osoba.imie << endl;

Przecież masz wpisać imię z obiektu..

0

plik <<< osoba.imie << std::endl;

A poza tym to nie jest OOP ... Nie robi się zmiennych publicznych.

0

Dziękuję serdecznie za odpowiedzi ;)
pozdrowienia

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