Jak odczytać dane wejściowe z pliku w C

Jak odczytać dane wejściowe z pliku w C
Informacje zostaną utracone po zakończeniu programu. Kiedy zapisamy dane w pliku, zostaną one zachowane, chociaż program się zawiedzie. Jeśli mamy dużo danych do wstawienia, wymagałoby to więcej czasu. Ale jeśli mamy plik, który zawiera całą treść, szybko go odzyskali, używając niektórych funkcji C. Bezpośrednio przeniesiemy plik z jednego urządzenia do drugiego bez modyfikacji.

Istnieją dwa typy plików: tekst i binarny. Pliki tekstowe to one z rozszerzeniem .tekst. Te pliki są proste do wykonania. Po uzyskaniu dostępu do tych plików otrzymamy jasny tekst dla wszystkich informacji. Dane można po prostu zmodyfikować lub usunąć. Przedłużenie .bin oznacza plik binarny. Zamiast zachować informacje w wyraźnym tekście, robią to w liczbach binarnych (0s i 1s).

Omówmy szczegółowo różne podejścia do czytania treści pliku.

Za pomocą funkcji fseek () do odczytu wejścia z pliku

Jeśli mamy dużą liczbę wpisów w pliku i chcemy je odzyskać jeden po drugim w określonej pozycji. Spożywałoby to znaczną ilość pamięci i czasu przetwarzania. Dzięki funkcji fseek () możemy uzyskać potrzebne informacje bardziej wydajnie.

#włączać
#włączać
struktur thrnumber

int Num1, Num2, Num3;
;
int main ()

int n;
STRUCT Numer liczb;
Plik *fptr;
if ((fptr = fopen ("file_1.txt "," r ")) == null)
printf („plik nie można otworzyć”);
wyjście (1);

fseek (fptr, -Sizeof (struct thrnumber), shee_end);
dla (n = 1; n < 5; ++n)

Mieć (i liczba, rozmiar (struktur thrnumber), 1, fptr);
printf ("n1: %d \ tn2: %d \ tn3: %d \ n", liczba.Num1, numer.Num2, liczba.num3);
fseek (fptr, -2*sizeof (struct thrnumber), shee_cur);

fclose (FPTR);
powrót 0;

Tutaj rozpoczniemy program, integrując wymagane pliki nagłówka #include i #Include . Teraz tworzymy funkcję, a następnie trzy różne zmienne są inicjowane. Te zmienne mają typ danych liczb całkowitych. Następnie deklarujemy funkcję main () i zaczynamy kodować w korpusie funkcji main ().

Oprócz tego konstruujemy wskaźnik pliku. Następnie stosuje się oświadczenie „jeśli”. Tutaj ustawiamy wskaźnik pliku równy funkcji fopen (). Funkcja fopen () służy do otwarcia określonego pliku. Za pomocą instrukcji IF sprawdzamy, czy podana ścieżka pliku jest równa instrukcji „NULL” PrintF drukuje plik tekstowy „nie może otworzyć”. W przeciwnym razie program kończy.

Wykorzystana jest dalsza metoda fseek (). Zawiera trzy parametry. Pierwszy argument zawiera wskaźnik pliku. Drugi argument pokazuje lokalizację danego pliku. Podobnie ostatni argument wskazuje punkt, w którym zaczyna się odchylenie. Oprócz tego ubiegamy się o pętlę. Deklarujemy zmienną i ustawiamy warunek dla liczby, a następnie na koniec wykonujemy przyrost wartości liczby.

Aby uzyskać tekst z określonego pliku, stosujemy funkcję Fread (). Teraz musimy wydrukować wynik, aby była używana funkcja printf (). Po raz kolejny stosujemy funkcję fseek (). W końcu, aby zamknąć dany plik, użyliśmy funkcji fclose ().

Za pomocą funkcji fgetc () do odczytu wejścia z pliku

Funkcja Fgetc () pobiera znaki, o których mowa wskaźnik funkcji. Dostarcza słowo odebrane przez strumień i dostosowuje punkt czytania w kierunku następnego słowa po każdym prawidłowym odczytaniu. Ale jeśli nie ma danych do odczytania, ta metoda oblicza zmienną EOF (-1).

#włączać
#włączać
#włączać
int main ()

Plik* fptr;
Char Chr;
fptr = fopen („Dane.txt "," r ");
if (null == fptr)
printf („Plik nie może otworzyć \ n”);

printf ("Dane z pliku to nazwa: amna \ n wiek: 24 \ n nazwa: Sara \ n Wiek: 16 \ n nazwa: Aneela \ n Wiek: 30 \ n");
Do
chr = fgetc (fptr);
printf („%C”, CHR);
while (chr != Eof);
fclose (FPTR);
powrót 0;

Po pierwsze, dołączamy trzy pliki nagłówka. Standardowa biblioteka to identyfikator pliku nagłówka . Zawiera dane dotyczące dostępności pamięci i bezpłatnych metod. Standardowe wejście jest identyfikatorem pliku nagłówka . Zawiera dane o metodach wejściowych/wyjściowych. Plik nagłówka zawiera deklaracje makro, zmienne i definicje metod i klas, które są używane nie tylko do przetwarzania tekstu, ale także do różnych funkcji obsługi przechowywania.

W następnym kroku inicjujemy funkcję Main (). Tutaj konstruuje się wskaźnik określonego pliku i deklarujemy zmienną posiadającą typ danych znaków. Następnie używamy funkcji fopen (). Ta metoda zawiera dwa argumenty: pierwszy parametr pokazuje nazwę pliku, a drugi parametr pokazuje tryb pliku. Tutaj metoda fopen () otwiera zdefiniowany plik w trybie czytania. Korzystamy z instrukcji IF, aby sprawdzić, czy wskaźnik pliku jest równy „null”, czy nie. Jeśli wskaźnik pliku jest równy „null”, wówczas określony program kończy. W przeciwnym razie stosujemy funkcję printf () do wydrukowania zawartości pliku.

Oprócz tego, za pomocą pętli do-podczas. Tutaj deklarujemy funkcję fgetc () w celu pobrania danych z zdefiniowanego pliku. Teraz stosujemy pętlę While, aby zbadać, czy dany znak nie byłby na końcu linii; Jeśli tak będzie, przestań czytać. Zastosowana jest metoda fclose (), co doprowadza plik do końca.

Korzystając z funkcji fgetc (), wyżej wymieniony kod odczytuje całe dane pliku, pojedynczy znak na raz. Pętla do zrobienia zostanie użyta do pobierania znaków, chyba że dojdą do końca pliku. Wytwarza znak EOF (-1) za każdym razem, gdy osiągnie wniosek.

Wniosek

W tym artykule przeszliśmy na różne sposoby, które są używane do odczytu danych z pliku. Tutaj zastosowaliśmy metody FGETC (), Fread () i fseek () do otrzymywania treści za pomocą konkretnych przykładów. Wszystkie są wcześniej zdefiniowanymi funkcjami języka C. Aby odczytać każde słowo pliku, użyliśmy metody fgetc (). Podobnie, aby wyodrębnić skonfigurowane dane do pliku, użyliśmy metody fseek ().