int main () {
Fil *fp;
char fileName [] ="data.txt"; // Byt ut med ditt anteckningsfilnnamn
int nummer;
Char Line [100];
// Öppna filen för läsning
fp =fopen (filnamn, "r");
// Kontrollera om filen öppnades framgångsrikt
if (fp ==null) {
printf ("Felöppningsfil:%s \ n", filnamn);
utgång (1); // Avsluta program
}
// Läs data från filen
medan (fscanf (fp, "%d", &nummer) ==1) {
printf ("Läs nummer:%d \ n", nummer);
}
// Exempel:Läsningssträngar (förutsatt att data.txt har en sträng per rad)
medan (fgets (linje, sizeof (linje), fp)! =null) {
printf ("Läs sträng:%s", rad);
}
// Stäng filen
fclose (fp);
return 0;
}
`` `
Förklaring:
1. Inkludera rubriker: `STDIO.H` är viktigt för fil I/O, och` stdlib.h` används för funktionen `exit () '.
2. Filöppning:
- `fp =fopen (filnamn," r ");` öppnar filen som heter "data.txt" i läsläge.
- Resultatet lagras i variabeln "FP" (filpekare).
3. Felhantering:
- `if (fp ==null)` kontroller om filen öppnades framgångsrikt. Om `fp 'är noll kan filen inte öppnas.
- Funktionen `exit (1) 'kallas för att avsluta programmet om det finns ett fel.
4. Läsdata:
- heltal: `fScanf (fp,"%d ", &nummer);` läser ett heltal från filen och lagrar den i variabeln "Number".
- strängar: `fgets (rad, storlek av (rad), fp);` läser en rad från filen (upp till 100 tecken) och lagrar den i `line '-uppsättningen.
5. Stäng filen: `fclose (fp);` stänger filen och släpper resurser.
Exempel NotePad -fil (data.txt):
`` `
123
456
Hej, världen!
Detta är en rad text.
`` `
Utgång:
`` `
Läs nummer:123
Läs nummer:456
Läs sträng:Hej, världen!
Läs sträng:Detta är en rad text.
`` `
Viktiga anteckningar:
* filväg: Byt ut "Data.txt" med den faktiska sökvägen till din anteckningsblock.
* Datatyper: Formatspecifikationerna "fscanf" (`%d` för heltal,`%s` för strängar, etc.) måste matcha datatyperna i din fil.
* Felhantering: Inkludera alltid felhantering för att säkerställa att ditt program beter sig korrekt om filen inte hittas eller inte kan öppnas.
* Stringhantering: "Fets" rekommenderas för lässträngar från filer eftersom det hanterar potentiella buffertflöden.
Låt mig veta om du har ett specifikt dataformat eller om du behöver mer avancerade filläsningstekniker!