Implementering av Fin.få()
Eksempel 1
Dette eksemplet omhandler det totale antallet tegn som er til stede i filen. For dette formålet vil en motvariabel bli initialisert til programmet.
Først vil vi snakke om bibliotekene som støtter kildekodene som skal utføres. Iostream brukes til å legge inn funksjonalitetene til skjerm som cout og input -funksjoner som CIN, så vi må bruke dette i overskriftsfilen vår.
For det andre, som vi er opptatt av filsystemet som å åpne og lukke filer, og når vi bruker andre funksjoner for arkivering, trenger vi et bibliotek som har alle filstrømningsfunksjonalitetene.
#inkludere
#inkludere
La oss starte kildekodelogikken i hovedprogrammet. I Fil Streaming brukes IFstream til å åpne filen og lese dataene i den, der finnen er objektet.
Ifstream fin ("frukt.tekst");
Navnet på en prøvefil med to navn er 'frukt.tekst'.
Den variable telleren som teller de totale tegnene i filen er initialisert som null i starten. Når telleren teller tegnene, er datatypen av teller også erklært som karakteren. Den innebygde funksjonen Fin.get er initialisert her som leser tegnene fra filen.
En stund sløyfe brukes som vil iterere 'til slutten av filen kommer. Inne i parameteren til While Loop, Fin.eof () eller 'slutt på filen' -funksjonen er erklært. Denne funksjonen betyr å få verdien til slutten av filen.
Samtidig som ( !Fin.eof ())
Inne i stundsløyfen økes motvariabelen først.
C = Fin.få ();
Etter det vises karakteren på den første stillingen, og deretter finnen.Get () Metode kalles for å få neste karakter. Inne. Når den siste tegnet telles, avsluttes sløyfen og utenfor sløyfekroppen, vises motverdien som helhet.
Lagre filen med .c forlengelse. For å utføre koden, bruker vi Ubuntu -terminalen. I Linux, for C ++ -kode, er det nødvendig med en kompilator for å kompilere kildekoden: Den kompilatoren er g++. Inngangs- og utgangsfil er nødvendig for å vise resultatene som er lagret av -o.
$ g ++ -o filfil.cVed utførelse vil du se resultatene nedenfor. Hver linje inneholder et tall som er antallet karakter av ordet. Plassen mellom to ord og neste linje regnes også som tegn.
Det totale antallet tegn vises på slutten.
Eksempel 2
Dette eksemplet omhandler funksjonen til FSTEAMS i filsystemet. Fra vår PC vil vi laste inn filen, åpne den, oppdatere den ved å skrive i den og vise innholdet etter å ha oppdatert den ved å bruke forskjellige strømmer av en fil som gjelder i henhold til tilstand.
Anta at vi har en enkel tekst, fruktfil, som inneholder navn på frukt. Se nedenfor.
Vi bruker denne filen i vår kildekode. Etter å ha lastet begge bibliotekene som vi har definert i det første programmet, inne i hovedprogrammet, er en karaktervariabel og en karaktergruppe definert som vil bli brukt senere.
Fra fstream brukes avstrøms, det er utgangsfilstrømmen, og brukes til å skrive innhold i filen. Denne funksjonen inneholder et objekt som filen lastes og åpnes i programmet.
AvStream Fout ("Sruits.tekst");
En if-uttalelse brukes her som sjekker objektet. Hvis filen åpnes, fungerer den. Men hvis den ikke kan åpne filen, kan du bare vise en feilmelding som filen ikke kan åpnes. Utenfor 'hvis' kropp, fra Fout, vises alt innholdet vi vil skrive i filen her. Disse tre linjene er lagt inn i filen. De forrige erstattes med dem, i tilfelle filen allerede har innhold. Ellers blir det opprettet en tom fil for å skrive disse linjene. Etter å ha lagt til et innhold, er filen lukket.
La oss sjekke filen gjennom "hvis" -erklæringen. Det sjekker om innholdet er skrevet til filen eller ikke. Det vises en feil. I det andre tilfellet, fortsett fremover. Etter det, bruk IFstream til å åpne filen.
Ifstream fin ("frukt.tekst")
Igjen, sjekk for å se om filen kan åpnes eller ikke.
Neste trinn er å hente rekorden som vi har lagt inn ved å bruke noen betingelser. Disse forholdene er i det hele tatt opp til brukeren. Vi har brukt logikk for å få de tre første tegnene i den første strengen i filen. Her har vi tatt hjelp fra for -loopen som itererer opp til 3. karakter av det første ordet i setningen inne i løkken.
Fin.få (ch);
Det vil få tegnet, og disse tegnene vises gjennom cout, mens resten av ordene i den første uttalelsen av filen vises igjen av finnen.få () funksjon. Men her brukes utvalget av tegn i parametrene. Vi brukte objektet med en karaktermatrise og størrelsen som vil lagre karakterene til strengene som det er.
Fin.få (str, 255);
Setningene som helhet er strengene til karakterer. Vi vil bruke en innebygd funksjon getline () for å få alle de to setningene etter den første uten å bruke noen tilstand.
Fin.Getline (Str, 255)
Etter at vi viste alle dataene vi ønsket, må filen lukkes. Dette vil bli gjort gjennom:
Fin.Lukk ()
Uttalelsen 'if' spiller rollen som å sjekke ved å bruke en fin.god () funksjon. Hvis det er sant, betyr det at det ikke er noen feil. Hvis det er usant, vises en feilmelding.
La oss nå utføre koden ovenfor i terminalen.
Du vil se at gjennom Get () -funksjonen vises de tre første tegnene og de gjenværende karakterene. Mens gjennom Getline () -funksjonen vises begge setningene. Gjennom utførelsen fikk vi ingen feilmelding.
Konklusjon
Finnen.få () -funksjonen kan brukes på forskjellige måter, men formålet med denne funksjonen forblir den samme: å hente posten til filen. Vi implementerte to forskjellige eksempler ved å bruke denne funksjonen i åpning og legge til data i filen, og deretter ved å bruke andre funksjonsstrømmer av arkivering. Vi viste dataene ved å bruke forholdene og lukket filen. Ved å følge denne tilnærmingen, fin.get kan enkelt brukes i filsystemet.