Inne działy

 

 

Język C rozmiar pliku

 

Dzięki standardowym funkcjom języka C możemy m.in. określić długość pliku. Do tego celu służą funkcje fsetpos, fgetpos oraz fseek. Ponieważ przy każdym odczycie/zapisie z/do pliku wskaźnik niejako “przesuwa” się o liczbę przeczytanych/zapisanych bajtów. Możemy jednak ustawić wskaźnik w dowolnie wybranym miejscu. Do tego właśnie służą wyżej wymienione funkcje. Aby odczytać rozmiar pliku powinniśmy ustawić nasz wskaźnik na koniec pliku,
po czym odczytać ile bajtów od początku pliku się znajdujemy. Wiem, brzmi to strasznie, ale działa wyjątkowo prosto i skutecznie. Użyjemy do tego tylko dwóch funkcji: fseek oraz fgetpos. Pierwsza służy do ustawiania wskaźnika na odpowiedniej pozycji w pliku, a druga do odczytywania na którym bajcie pliku znajduje się wskaźnik. Kod, który określa rozmiar pliku znajduje się tutaj:

 

#include <stdio.h>
int main (int argc, char **argv)
{
FILE *fp = NULL;
fpos_t dlugosc;
if (argc != 2) {
printf ("Użycie: %s <nazwa pliku>\n", argv[0]);
return 1;
}
if ((fp=fopen(argv[1], "rb"))==NULL) {
printf ("Błąd otwarcia pliku: %s!\n", argv[1]);
return 1;
}
fseek (fp, 0, SEEK_END); /* ustawiamy wskaźnik na koniec pliku */
fgetpos (fp, &dlugosc);
printf ("Rozmiar pliku: %d\n", dlugosc);
fclose (fp);
return 0;
}

 Znajomość rozmiaru pliku przydaje się w wielu różnych sytuacjach, więc dobrze przeanalizuj przykład!

 

 

Zobacz nasze wszystkie kursy

WWW


HTML
HTML - Znaczniki
CSS - Tutorial
CSS - Selektory
PHP
JavaScript

XML

XSLT

Bazy danych


SQL
SQLite
MySQL
PostgreSQL

 

 

Programowanie


C
C++
C#
Java
VisualBasic
Python

Linux


Podstawy Linuxa
Bash
Linuks artykuły

Windows


Excel funkcje
Windows wskazówki
Outlook

Pozotałe działy


Programy
Rozrywka

 

 

 

This email address is being protected from spambots. You need JavaScript enabled to view it.