Na-akọwa otu onye mmemme C si emepụta, mepee ma mechie faịlụ ederede, ma ọ bụ faịlụ ọnụọgụ abụọ.
Faịlụ, pụtara usoro nke bytes, ma ọ bụ faịlụ ederede ma ọ bụ faịlụ ọnụọgụ abụọ, Asụsụ C, ọ bụghị naanị na-enye ohere ịrụ ọrụ ọkwa dị elu, kamakwa na-enye oku n'okpuru (OS) iji hazie faịlụ na ngwaọrụ nchekwa. .Isiakwụkwọ a ga-akọwa oku dị mkpa na njikwa akwụkwọ.
oghe faịlụ
Na-ejikarị ọrụ fopen () mepụta faịlụ ọhụrụ ma ọ bụ mepee faịlụ dị adị, oku a na-amalite ihe ụdị FILE nwere ozi niile dị mkpa iji jikwaa ọsọ ahụ.Nke a bụ prototype nke oku ọrụ a:
FILE * fopen (const char * aha faịlụ, ọnọdụ const char *);
Ebe a aha faịlụ bụ eriri ịkpọ aha faịlụ, uru nke ọnọdụ nnweta nwere ike ịbụ otu n'ime ụkpụrụ ndị a:
ụkpụrụ | nkọwa |
r | Mepee faịlụ ederede dị na-enye ohere ịgụ ya. |
w | Mepee faịlụ ederede na-enye ohere ide na faịlụ ahụ.Ọ bụrụ na faịlụ adịghị, a ga-emepụta faịlụ ọhụrụ.N'ebe a, mmemme gị na-ede ọdịnaya site na mmalite nke faịlụ ahụ.Ọ bụrụ na faịlụ ahụ dị, a ga-ewepụ ya ka ọ bụrụ ogologo efu wee degharịa ya ọzọ. |
a | Mepee faịlụ ederede wee degara faịlụ a n'ụdị mgbakwunye.Ọ bụrụ na faịlụ adịghị, a ga-emepụta faịlụ ọhụrụ.N'ebe a, mmemme gị na-agbakwunye ọdịnaya na faịlụ ndị ị nweburu. |
r+ | Mepee faịlụ ederede na-enye gị ohere ịgụ na ide faịlụ ahụ. |
w+ | Mepee faịlụ ederede na-enye gị ohere ịgụ na ide faịlụ ahụ.Ọ bụrụ na faịlụ ahụ adịlarị, a na-ewepụ faịlụ ahụ ka ọ bụrụ ogologo efu, ma ọ bụrụ na faịlụ ahụ adịghị, a ga-emepụta faịlụ ọhụrụ. |
a+ | Mepee faịlụ ederede na-enye gị ohere ịgụ na ide faịlụ ahụ.Ọ bụrụ na faịlụ adịghị, a ga-emepụta faịlụ ọhụrụ.Agụ na-amalite na mmalite nke faịlụ, na ide bụ naanị na append mode. |
Ọ bụrụ faịlụ ọnụọgụ abụọ edoziri, jiri ụdị ohere a iji dochie nke dị n'elu:
"rb", "wb", "ab", "rb+", "r+b", "wb+", "w+b", "ab+", "a+b"
faịlụ mechiri emechi
Iji mechie faịlụ, biko jiri fclose() ọrụ.Ihe nlere nke ọrụ ahụ bụ nke a:
int fclose (FILE * fp);
- Ọ bụrụ na emechiri faịlụ ahụ nke ọma, ọrụ fclose () na-alaghachi efu, ma ọ bụrụ na njehie ahụ laghachiri EOF.Ọrụ a, n'ezie, na-ewepụ data na nchekwa, mechie faịlụ ahụ, ma wepụta ebe nchekwa niile ejiri maka faịlụ ahụ.EOF bụ nkọwapụta mgbe niile na faịlụ nkụnye eji isi mee stdio.h
Ọbá akwụkwọ ọkọlọtọ C na-enye ọrụ dị iche iche ịgụ na ide faịlụ site na mkpụrụedemede ma ọ bụ dị ka eriri ogologo.
Dee na faịlụ
Nke a bụ ọrụ kachasị mfe iji dee mkpụrụedemede na iyi:
int fputc (int c, FILE *fp);
Ọrụ fputc () na-ede uru njirimara nke paramita c n'ime iyi mmepụta nke fp na-atụ aka na ya.Ọ bụrụ na ederede na-aga nke ọma, ọ na-eweghachite ederede na EOF ma ọ bụrụ na njehie emee.Ị nwere ike iji ọrụ na-esonụ iji dee eriri na-ejedebe na efu na iyi:
int fputs (const char *s, FILE *fp);
Ọrụ fputs () na-ede eriri s na iyi mmepụta ebe fp na-atụ aka.Ọ bụrụ na edere ihe ịga nke ọma, ọ na-eweghachi uru na-adịghị mma na EOF ma ọ bụrụ na njehie emee.Ị nwekwara ike iji ọrụ int fprintf (FILE * fp, const char * usoro,...) na-ede eriri na faịlụ ahụ.Gbalịa ihe atụ a:
Cheta na: Gbaa mbọ hụ na ị nwere ndekọ tmp dị, ma ọ bụrụ na ọ dịghị, ị ga-ebu ụzọ mepụta ya na kọmputa gị.
/ tmp na-abụkarị ndekọ nwa oge na sistemụ Linux.Ọ bụrụ na ị na-agba ọsọ na sistemụ Windows, ịkwesịrị ịgbanwe ya ka ọ bụrụ akwụkwọ ndekọ aha dị na gburugburu mpaghara, dị ka: C: \ tmp, D: \ tmp, wdg.
ihe atụ dị ndụ
#gụnyeint main () {FILE * fp = NULL;fp = fopen ("/tmp/test.txt ", "w +");fprintf (fp , "Nke a bụ nnwale maka fprintf...\n");fputs ("Nke a na-anwale maka fputs...\n ", fp );fclose (fp);}
Mgbe a chịkọtara ma mebie koodu ahụ dị n'elu, ọ na-emepụta faịlụ ọhụrụ test.txt inthe / tmp ndekọ.Na-edekwa ahịrị abụọ na-eji ọrụ abụọ dị iche iche.Ka anyị gụọ faịlụ a ọzọ.
Gụọ faịlụ ahụ
Nke a bụ ọrụ kachasị mfe ịgụ otu mkpụrụedemede sitere na faịlụ:
int fgetc (FILE * fp);
Ọrụ fgetc () na-agụ mkpụrụedemede sitere na faịlụ ntinye nke fp na-atụ aka na ya.Uru nloghachi bụ agwa agụ na EOF ma ọ bụrụ na njehie emee.Ọrụ ndị a na-enye gị ohere ịgụ eriri sitere na iyi:
char * fgets ( char * buf , int n , FILE * fp );
Ọrụ fgets () na-agụ mkpụrụedemede n-1 sitere na iyi ntinye nke fp na-eduzi.Ọ na-eṅomi eriri agụ na onye na-echekwa ihe ma tinye mkpụrụedemede efu na njedebe iji kwụsị eriri ahụ.
Ọ bụrụ na ọrụ a na-ezute agwa ahịrị agbajiri '\ n' ma ọ bụ EOF nke njedebe nke faịlụ tupu ị gụọ mkpụrụedemede ikpeazụ, wee laghachi naanị na mkpụrụedemede ọgụgụ, gụnyere nkwụsịtụ ahịrị.Ị nwekwara ike iji int fscanf (FILE * fp, const char * usoro,...) ọrụ iji gụọ eriri na faịlụ ahụ, mana ọ na-akwụsị ịgụ mgbe ị na-ezute oghere mbụ na nkwụsị ahịrị.
ihe atụ dị ndụ
#gụnyeint main () {FILE * fp = NULL;agba agba [255];fp = fopen ("/tmp/test.txt ", "r");fscanf (fp , "%s", buff );printf ("1: %s \n ", buff );fgets (buff, 255, (FILE *) fp );printf ("2: %s \n ", buff );fgets (buff, 255, (FILE *) fp );printf ("3: %s \n ", buff );fclose (fp);}
Mgbe a chịkọtara ma mebie koodu ahụ dị n'elu, ọ na-agụ faịlụ ndị emepụtara na ngalaba gara aga, na-arụpụta nsonaazụ ndị a:
1: Nke a 2: na-anwale maka fprintf...
3: Nke a na-anwale maka fputs ...
Nke mbụ, usoro fscanf () na-agụ naanị Nke a .n'ihi na ọ na-ezute oghere na azụ.Nke abụọ, kpọọ functon fgets () ka ịgụọ akụkụ nke fọdụrụ ruo ọgwụgwụ nke ahịrị.N'ikpeazụ, kpọọ fgets () ka ịgụọ ahịrị nke abụọ kpamkpam.
Ọrụ ọnụọgụ abụọ I / O
A na-eji ọrụ abụọ a maka ntinye na mmepụta ọnụọgụ abụọ:
size_t fread (efu *ptr, size_t size_of_elements, size_t nọmba_of_elements, FILE *a_file);size_t fwrite (const void *ptr, size_t size_of_elements, size_t nọmba_of_elements, FILE *a_file);
A na-agụ ma dee ọrụ abụọ a maka ngọngọ nchekwa-na-abụkarị nhazi ma ọ bụ ihe owuwu.
N'elu gbasara ịgụ na ide faịlụ C bụ nke HDV Phoelectron Technology Ltd., ọrụ nka na ụzụ ngwanrọ.Na ụlọ ọrụ maka akụrụngwa metụtara netwọkụ (dịka: ACONU/ nkwukọrịtaONU/ nwere ọgụgụ isiONU/ eririONU, wdg) achịkọtala otu sọftụwia dị ike, maka ndị ahịa ọ bụla hazie ihe achọrọ pụrụ iche nke chọrọ ya, ka ngwaahịa anyị nwee ọgụgụ isi na nke dị elu.