Witam, piszę na zadanie prostą bazę danych i mam problem z zapisem danych do pliku. Wg. wszystkich kursów/guide'ów to powinno działać. Jakieś pomysły dlaczego tak nie jest?
#include <cstdlib>
#include <iostream>
#include <fstream>
#include <string>
using namespace std;
int n; //dana ilosci wpisow
fstream plik;
struct baza
{
string imie;
string nazwisko;
string mail;
int telefon;
int fax;
string miejscowosc;
string ulica;
int numer_d;
int numer_m;
string kod;
string poczta;
};
struct baza dane[100];
void otw_plik()
{
plik.open( "baza.txt", std::ios::in | std::ios::out );
if( plik.good() == true ) std::cout << "Poprawnie otwarto plik" << std::endl;
else std::cout << "Wystapil problem z otwarciem pliku" << std::endl;
}
void wczytaj()
{
while(!plik.eof())
{
plik>>dane[n].imie;
n++;
}
}
void zapisz()
{
cout<<dane[0].imie<<endl; // sprawdzanie
dane[0].imie = "lol"; // czy zmienily sie dane
cout<<dane[0].imie<<endl; // w tablicy
for(int i=0;i<n;i++)
{
plik<<dane[i].imie;
}
}
int main()
{
n=0;
otw_plik();
wczytaj();
zapisz();
plik.close();
}