Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <fstream>
- using namespace std;
- struct los
- {
- int numer;
- int liczba[6];
- };
- int main(void)
- {
- ifstream pliko; //plik otwarty
- ofstream plikz; //plik ma byc binarny
- pliko.open("wyniki.txt");
- plikz.open("losowanie.bin", fstream::binary | fstream::trunc); //binary to binarny pli, trunc czysci zawartosc przed otwarciem i dopiero zapisuje
- if(!pliko.good())
- {
- cout<<"nie otwarto pliku wejscia";
- return -1;
- }
- if(!plikz.good())
- {
- cout<<"nie otwarto pliku binarnego";
- //zamyka plik otwarty tez by potem nie bylo przypalu
- if(pliko.is_open())
- {
- pliko.close();
- }
- return -1;
- }
- los los_konkretny;
- int numer_losowania;
- int tablica_liczb_wylosowanych[6];
- //ignoruj 4 linijki - zignoruj 256 znakow (tak sobie losowo zalozylismy bo wiecej nie ma w lini)
- //az do momentu trafienia na znak konca lini
- pliko.ignore(256, '\n');
- pliko.ignore(256, '\n');
- pliko.ignore(256, '\n');
- pliko.ignore(256, '\n');
- string tekst;
- while(!pliko.eof())
- {
- //najpierw |>>numer_losu>> | >>data>> dzien tygodnia>> |>>
- pliko>>tekst>>los_konkretny.numer>>tekst>>tekst>>tekst>>tekst;
- //teraz czytamy 6 numerow lotka
- for(int i=0; i<6; i++)
- {
- pliko>>los_konkretny.liczba[i];
- pliko>>tekst; // po kazdym losie jest | musimy wczytac
- }
- plikz.write(reinterpret_cast<char*> (&los_konkretny), sizeof(los) ); //interpretujemy to jako lacuch znakow, rozmiar zrzutu rozmiaru struktury
- // wyswietlanie
- cout<< los_konkretny.numer<<" : ";
- for(int i=0; i<6; i++)
- {
- cout<<los_konkretny.liczba[i];
- cout<<" ";
- }
- cout<<endl;
- } //koniec while czytania i zapisu pliku
- pliko.close();
- plikz.close();
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement