Proszę bardzo :) Jeśli chce Ci się zerknąć na niego ;p
#include <cstdlib>
#include <iostream>
#include <fstream>
#include <string>
using namespace std;
int main(int argc, char *argv[])
{
//deklaracje
int wybor1, licznik, licznikTemp, l, numerkatalogowy, ilosc;
string tytul, iautor, nautor, line;
char rok[30];
numerkatalogowy = 0;
licznikTemp = 0;
l = 0;
ilosc = 0;
do
{
licznik = 0;
system("cls");
cout << "Co chcesz zrobic?" << endl;
cout << "1. Wyswietlic plik z ksiazkami do wypozyczenia" << endl;
cout << "2. Wyswietlik plik z ksiazkami wypozyczonymi" << endl;
cout << "3. Dodanie nowej ksiazki do zbioru" << endl;
cout << "4. Wypozyczenie ksiazki" << endl;
cout << "5. Przyjecie ksiazki" << endl;
cout << "0. Wylaczenie programu" << endl;
cin >> wybor1;
switch(wybor1)
{
case 1:
{
fstream bibliotekaO("biblioteka.txt");
if(!bibliotekaO)
{
cout << "Nie mozna otworzyc pliku.\n";
}
char linelong[255];
while(bibliotekaO)
{
bibliotekaO.getline(linelong, 255);
if(bibliotekaO) cout << linelong << endl;
}
bibliotekaO.close();
system("PAUSE");
break;
}
case 2:
{
fstream wypozyczO("wypozyczone.txt");
if(!wypozyczO)
{
cout << "Nie mozna otworzyc pliku.\n";
}
char linelong[255];
while(wypozyczO)
{
wypozyczO.getline(linelong, 255);
if(wypozyczO) cout << linelong << endl;
}
wypozyczO.close();
system("PAUSE");
break;
}
case 3:
{
fstream dodaj("biblioteka.txt", ios::in | ios::out | ios::ate);
{
if(!dodaj)
{
cout << "Nie mozna otworzyc pliku.\n";
} else {
cout << "Podaj imie autora ksiazki: ";
cin >> iautor;
cout << "Podaj nazwisko autora ksiazki: ";
cin >> nautor;
cout << "Podaj tytul ksiazki: ";
cin >> tytul;
cout << "Podaj rok wydania ksiazki: ";
cin >> rok;
}
dodaj << endl;
dodaj << "Tytul: " << tytul << endl;
dodaj << "Autor: " << iautor << " " << nautor << endl;
dodaj << "Rok wydania: " << rok << endl;
dodaj.close();
}
// liczenie linijek
fstream liczenie("biblioteka.txt", ios::in | ios::out);
{
while (!liczenie.eof() )
{
getline(liczenie,line);
licznik++;
}
cout << licznik << endl;
ilosc = (licznik - 4) / 4;
cout << ilosc << endl;
liczenie.close();
}
// koniec liczenia linijek
//numerowanie ksiazek
fstream numerowanie("biblioteka.txt", ios::in | ios::out | ios::binary);
{
if(numerowanie)
{
for(l = 1; l <= licznik; l++)
{
getline(numerowanie, line);
cout << "L: " << l << endl;
licznikTemp++;
if(licznikTemp > 2)
{
line = numerkatalogowy;
cout << "Licznik Temp: " << licznikTemp << endl;
numerkatalogowy = l / 4;
licznikTemp = 0;
numerowanie << line;
cout << "Numer: " << numerkatalogowy << endl;
}
}
} else {};
numerowanie.close();
}
// koniec numerowania
system("PAUSE");
break;
}
}
}while(wybor1 != 0);
system("PAUSE");
return EXIT_SUCCESS;
}
~edit
Aktualnie nawet nie działa mi to dodawanie liczb, w szkole zrobiłem i działało, ale - tak jak wcześniej wspomniałem - ucinało znaki w pliku, więc postanowiłem zrobić na nowo.