C-filer I / O: Opprett, åpne, les, skriv og lukk en fil

C Filadministrasjon

En fil kan brukes til å lagre et stort volum vedvarende data. Som mange andre språk har «C» følgende filadministrasjonsfunksjoner,

  1. Oppretting av en fil
  2. Åpne en fil
  3. Lese en fil
  4. Skrive til en fil
  5. Lukke en fil

Følgende er de viktigste filadministrasjonsfunksjonene som er tilgjengelige i «C»,

funksjon formål
fopen () Opprette en fil eller åpne en eksisterende fil
fclose () Lukke en fil
fprintf () Skrive en datablokk til en fil
fscanf () Lese en blokker data fra en fil
getc () Leser et enkelt tegn fra en fil
putc () Skriver et enkelt tegn til en fil
getw () Leser et heltall fra en fil
putw () Skrive et heltall til en fil
fseek () Angir posisjonen til en filpeker til et spesifisert sted
ftell () Returnerer den gjeldende posisjonen til en filpeker
spol tilbake () Angir filpekeren i begynnelsen av en fil

I denne opplæringen lærer du-

  • Hvordan lage en fil
  • Hvordan lukke en fil:
  • Skrive til en fil
    • fputc () Funksjon:
    • fputs () Funksjon:
    • fprintf () Funksjon:
  • Lesing av data fra en fil
  • Interaktiv fil Les og skriv med getc og putc

Hvordan lage en fil

Når du vil jobbe med en fil, er det første trinnet å opprette en fil. En fil er bare plass i et minne der data lagres.

For å opprette en fil i et «C» -program blir følgende syntaks brukt,

FILE *fp;fp = fopen ("file_name", "mode");

I syntaksen ovenfor er filen en datastruktur som er definert i standardbiblioteket.

fopen er en standardfunksjon som brukes til å åpne en fil.

  • Hvis filen ikke er tilstede på systemet, blir den opprettet og deretter åpnet.
  • Hvis en fil allerede er tilstede på systemet, åpnes den direkte bruker denne funksjonen.

fp er en filpeker som peker på typefilen.

Når du åpner eller oppretter en fil, må du spesifisere hva du skal gjøre med filen. En fil i «C» -programmering kan opprettes eller åpnes for lese- / skriveformål. En modus brukes til å spesifisere om du vil åpne en fil for noen av nedenstående formål. Følgende er de forskjellige typer moduser i «C» programmering som kan brukes mens du arbeider med en fil.

Filmodus Beskrivelse
r Åpne en fil for lesing. Hvis en fil er i lesemodus, slettes ingen data hvis en fil allerede er tilstede på et system.
w Åpne en fil for skriving. Hvis en fil er i skrivemodus, opprettes en ny fil hvis en fil ikke eksisterer i det hele tatt. Hvis en fil allerede er tilstede i et system, blir alle dataene i filen avkortet, og den åpnes for skriving formål.
a Åpne en fil i tilleggsmodus. Hvis en fil er i tilleggsmodus, åpnes filen. Innholdet i filen endres ikke.
r + åpent for lesing og skriving fra begynnelsen
w + åpent for lesing og skriving, overskriving av fil
a + åpent for lesing og skriving, vedlegg til fil

I den gitte syntaksen er filnavnet og modusen spesifisert som strenger, derfor må de alltid være omsluttet av doble anførselstegn.

Eksempel:

#include <stdio.h>int main() {FILE *fp;fp = fopen ("data.txt", "w");}

Utgang:

Filen opprettes i samme mappe der du har lagret koden .

Du kan spesifisere banen der du vil opprette filen din

#include <stdio.h>int main() {FILE *fp;fp = fopen ("D://data.txt", "w");}

Slik lukker du en fil

Man bør alltid lukke en fil når operasjonene på filen er over. Det betyr at innholdet og koblingene til filen avsluttes. Dette forhindrer utilsiktet skade på filen.

«C» gir fclose-funksjonen for å utføre fillukkingsoperasjon. Syntaksen til fclose er som følger,

fclose (file_pointer);

Eksempel:

FILE *fp;fp = fopen ("data.txt", "r");fclose (fp);

Fclose funksjon tar en filpeker som et argument. Filen tilknyttet filpekeren lukkes deretter ved hjelp av fclose-funksjonen.Den returnerer 0 hvis lukking var vellykket og EOF (slutten av filen) hvis det har oppstått en feil mens filen lukkes.

Etter å ha lukket filen, kan den samme filpekeren også brukes med andre filer.

I «C» programmering lukkes filer automatisk når programmet avsluttes. Å lukke en fil manuelt ved å skrive fclose-funksjonen er en god programmeringspraksis.

Skrive til en fil

I C, når du skriver til en fil, må nye linjetegn «\ n» legges eksplisitt til.

Stdio-biblioteket tilbyr de nødvendige funksjonene for å skrive til en fil:

  • fputc (char, file_pointer): Den skriver et tegn til filen som filpekeren peker på.
  • fputs (str, file_pointer): Den skriver en streng til filen som fil_pointer peker på.
  • fprintf (file_pointer, str, variable_lists): Den skriver ut en streng til filen som file_pointer peker på. Strengen kan valgfritt omfatte formatspesifikatorer og en liste over variabler variable_lists.

Programmet nedenfor viser hvordan du skriver til en fil:

fputc () Funksjon:

Utgang:

Ovennevnte program skriver et enkelt tegn inn i fputc_test.txt-filen til den når neste linjesymbol «\ n» som indikerer at setningen ble skrevet. Prosessen er å ta hvert tegn i matrisen og skrive det inn i filen.

  1. I programmet ovenfor har vi opprettet og åpnet en fil kalt fputc_test.txt i en skrivemodus og erklærer strengen som skal skrives inn i filen.
  2. Vi utfører en tegn for tegn-skriving ved hjelp av for loop og legger hvert tegn i filen vår til «\ n «tegn påtreffes og filen lukkes ved hjelp av fclose-funksjonen.

fputs () Funksjon:

UTGANG:

  1. I det ovennevnte programmet har vi opprettet og åpnet en fil kalt fputs_test.txt i skrivemodus.
  2. Etter at vi har utført en skriveoperasjon ved hjelp av fputs () -funksjonen ved å skrive tre forskjellige strenger
  3. Så lukkes filen ved hjelp av fclose-funksjonen.

fprintf () Funksjon:

UTGANG:

  1. I programmet ovenfor har vi opprettet og åpnet en fil kalt fprintf_test.txt i skrivemodus.
  2. Etter at en skriveoperasjon er utført ved hjelp av fprintf () -funksjonen ved å skrive en streng, lukkes filen ved hjelp av fclose-funksjonen.

Lesing av data fra en fil

Det er tre forskjellige funksjoner som er viet til å lese data fra en fil

  • fgetc (file_pointer): Den returnerer neste tegn fra filen som pekeren viser til. Når slutten av filen er nådd, sendes EOF tilbake.
  • fgets (buffer, n, file_pointer): Den leser n-1 tegn fra filen og lagrer strengen i en buffer der NULL-tegnet «\ 0» er lagt til som siste tegn.
  • fscanf (file_pointer, conversion_specifiers, variable_adresses): Den brukes til å analysere og analysere data. Den leser tegn fra filen og tilordner inngangen til en liste over variabelpekere variable_adresser ved hjelp av konverteringsspesifikatorer. Husk at som med scanf, slutter fscanf å lese en streng når det oppstår mellomrom eller ny linje.

Følgende program viser lesing fra fputs_test.txt-filen ved hjelp av fgets (), fscanf () og fgetc () fungerer henholdsvis:

Resultat:

  1. I det ovennevnte programmet har vi åpnet filen kalt «fprintf_test.txt» som tidligere ble skrevet ved hjelp av fprintf () -funksjonen, og den inneholder «Learning C with Guru99» -strengen. Vi leser den ved hjelp av funksjonen fgets () som leser linje for linje der bufferstørrelsen må være nok til å håndtere hele linjen.
  2. Vi åpner filen på nytt for å tilbakestille pekefilen til å peke i begynnelsen av fil. Lag forskjellige strengvariabler for å håndtere hvert ord separat. Skriv ut variablene for å se innholdet. Fscanf () brukes hovedsakelig til å trekke ut og analysere data fra en fil.
  3. Åpne filen på nytt for å tilbakestille pekefilen til den peker i begynnelsen av filen. Les data og skriv dem ut fra filtegn for tegn ved hjelp av getc () -funksjonen til EOF-setningen oppstår
  4. Etter å ha utført en leseoperasjonsfil med forskjellige varianter, lukket vi igjen filen ved hjelp av fclose-funksjonen.

Interaktiv fil Les og skriv med getc og putc

Dette er de enkleste filoperasjonene. Getc står for get character, og putc står for put character. Disse to funksjonene brukes til å håndtere bare ett tegn om gangen.

Følgende program viser filhåndteringsfunksjonene i «C» -programmering:

Utgang:

  1. I programmet ovenfor har vi har opprettet og åpnet en fil som heter demo i skrivemodus.
  2. Etter at en skrivoperasjon er utført, lukkes filen ved hjelp av fclose-funksjonen.
  3. Vi har igjen åpnet en fil som nå inneholder data i en lesemodus. En stund-løkke vil kjøres til eof er funnet. Når slutten av filen er funnet, vil operasjonen avsluttes og dataene vises ved hjelp av printf-funksjonen.
  4. Etter å ha utført en leseoperasjon blir filen igjen lukket ved hjelp av fclose-funksjonen.

Sammendrag

  • En fil er et mellomrom i et minne der data lagres.
  • «C «programmering gir forskjellige funksjoner for å håndtere en fil.
  • En mekanisme for å manipulere med filene kalles filhåndtering.
  • En fil må åpnes før du utfører operasjoner på den.
  • En fil kan åpnes i lese-, skrive- eller vedleggsmodus.
  • Funksjonene Getc og putc brukes til å lese og skrive et enkelt tegn.
  • funksjon fscanf () tillater å lese og analysere data fra en fil
  • Vi kan lese (ved hjelp av getc-funksjonen) en hel fil ved å løkke den for å dekke hele filen til EOF oppstår
  • Vi kan skrive til en fil etter å ha opprettet navnet sitt, ved å bruke funksjonen fprintf () og den må ha nyheten ine tegn på slutten av strengteksten.

Legg igjen en kommentar

Din e-postadresse vil ikke bli publisert. Obligatoriske felt er merket med *