c programming

Basics of File Handling

File Handling

File Handling किसी भी Programming Language का एक महत्वपूर्ण Aspect है, जो Disk पर Data Manipulation और Storage की Permission देता है। C Programming में, File Handling Standard Library Function के एक Set के माध्यम से Implement की जाती है| जो File के साथ काम करने का एक Convenient Way Provide करती है।

File Handling Functions

No. Function Description
1 fopen() इस Function के द्वारा File को Open करना होता है|
2 fprintf() इस Function के द्वारा हम File में Data को Write कर सकते हैं|
3 fscanf() इसके द्वारा File से Data को Read किया जाता है|
4 fputc() इस Function का use करके File में एक Character को Write किया जाता है|
5 fgetc() यह File से एक Character को Read करता है|
6 fclose() इस Function के द्वारा File को Close किया जाता है|
7 fseek() यह दी गयी Position पर File Pointer को Set करता है|
8 fputw() यह File में Integer को Write करता है|
9 fgetw() यह File से Integer को Read करता है|
10 ftell() यह Current Position को Return करता है|
11 rewind() यह File की शुरुआत में File Pointer को Set करता है|

Opening or Creation of a New File 

C Language में File Create या Create हुए File को Open करने के लिए fopen() Function का use किया जाता है| fopen() Function, (stdio.h) Header File में Define है|

Syntax


FILE *fp;

fp = fopen(“file_name”,”mode”);

  • यहाँ fp एक FILE Pointer है, जो fopen() द्वारा Open किये जाने वाले File को Point कर रहा है|
  • FILE एक Structure है, जो File से Related Information जैसे –  Name, Size, Buffer Size, Current Position, End of File आदि Contain करता है |
  • file_name – यहाँ पर उस File का नाम आएगा जिसे हम Open करना चाहते है |

File Opening Modes

Mode Description
r यह Text File को Read Mode में Open करता है|
w यह Text File को Write Mode में Open करता है|
a यह Text File को Append Mode में Open करता है|
r+ यह Text File को Read और Write दोनों Modes में Open करता है|
w+ यह Text File को Read और Write दोनों Modes में Open करता है|
a+ यह Text File को Read और Write दोनों Modes में Open करता है|
rb यह Binary File को Read Mode में Open करता है|
wb यह Binary File को Write Mode में Open करता है|
ab यह Binary File को Append Mode में Open करता है|
rb+ यह Binary File को Read और Write दोनों Modes में Open करता है|
wb+ यह Binary File को Read और Write दोनों Modes में Open करता है|

Example 


#include <stdio.h>
int main()
{
FILE * fp;
if (fp = fopen(“hello.txt”, “r”))
{
printf(“File opened successfully in read mode”);
}
else
printf(“The file is not present! cannot create a new file using r mode”);
fclose(fp);
return 0;
}

Output


The file is not present! cannot create a new file using r mode

Closing a File

किसी भी File को Close करने के लिए fclose() Function का use किया जाता है| fclose() के द्वारा हम कसी भी File को आसानी से Close कर सकते है |

Syntax


fclose (file_pointer);

Reading from File

किसी File को Read करने के लिए सबसे पहले उस File को Read Mode “r”  में fopen Function द्वारा Open करना पड़ता है | File को Open करने के बाद File के अंदर के Data को Read करने के लिए C Language में हम कुछ Function का use करते है |

  •  fgetc(file_pointer) – यह File Pointer द्वारा Pointed File से अगला Character Return करता है। जब यह File के अंत तक Access किया जाता है, तब यह Function EOF (End of File) Return होता है।

Example


#include <stdio.h>
#include <stdlib.h>
int main()
{
/* Pointer to the file */
FILE *fp1;
/* Character variable to read the content of file */
char c;

/* Opening a file in r mode*/
fp1= fopen (“C:\\myprogram.txt”, “r”);

/* Infinite loop –I have used break to come out of the loop*/
while(1)
{
c = fgetc(fp1);
if(c==EOF)
break;
else
printf(“%c”, c);
}
fclose(fp1);
return 0;
}

  • fgets() – यह File से n-1 Character Read करता है, और String को एक Buffer में Store करता है| जिसमें NULL Character ‘\0’  Character के रूप में जोड़ा जाता है।

Syntax


fgets(buffer, n, file_pointer);

  • fscanf() – इसका use Data को Analyze करने के लिए किया जाता है। यह File से Characters को Read करता है| यह scanf Function की तरह Space तथा Newline आने पर Reading Close कर देता है |

Syntax


fscanf(file_pointer, conversion_specifiers, variable_adresses);

Example 


FILE *fp
fp = fopen (“file.txt”, “r”);
fscanf (fp, “%s %s %s %d”, str1, str2, str3, &date);

Writing to a File 

File के अंदर Writing Operation Perform करने के लिए सबसे पहले उस File को Write Mode “w” में Open करना होगा| यदि File को किसी दूसरे Mode जैसे “r” Mode में Open करते है, तो File में Writing Operation Perform नहीं कर सकते|

File को Write Mode “w” में Open करने पर यदि वो File पहले से Disk में Include नहीं है, तो fopen() Function एक New File Create करके उसे Open कर देगा और यदि File पहले से Include है, तो यह File में पहले से लिखे Data को Remove देगा और नए आने वाले Data को File में Enter कर देगा |

File Open होने के बाद File में Write करने के लिए fprintf, fputc और fputs Function का use किया जाता है |

Example 


#include <stdio.h>
#include <stdlib.h>

int main()
{
char ch;
FILE *fp;
fp = fopen(“C:\\myprogram.txt”,”w”);

if(fp == NULL)
{
printf(“Error”);
exit(1);
}

printf(“Enter any character: “);
scanf(“%c”,&ch);

/* You can also use fputc(ch, fp);*/
fprintf(fp,”%c”,ch);
fclose(fp);

return 0;
}

Tags: No tags

Add a Comment

Your email address will not be published. Required fields are marked *