cześć,
napisałem funkcję, która ma zwracać wielkość pliku w bajtach.
Dla małych plików (test.txt) zwraca poprawną wielkość 9 bajtów, ale dla większych (test1.txt) Windows pokazuje 10 698 a funkcja 8315
co zrobiłem źle albo czego nie wziąłem pod uwagę?
void ile(string NazwaPliku)
{
ifstream Plik;
Plik.open(NazwaPliku);
if (Plik.good())
{
cout << "plik zostal otwary" << endl;
}
else
{
cout << "blad otwierania pliku!" << endl;
return;
};
char Bufor;
int RozmiarPliku = 0;
cout << "sprawdzam rozmiar pliku..." << endl;
while (true)
{
Plik >> Bufor;
bool TestKoncaPliku;
TestKoncaPliku = Plik.good();
if (!TestKoncaPliku) break;
RozmiarPliku++;
};
cout << "rozmiar pliku wynosi: " << RozmiarPliku << " bajtow" << endl;
}