What
is File in c program
A
file is a collection of bytes stored on a secondary storage device, which is
generally a disk of some kind. The collection of bytes may be interpreted, for
example, as characetrs, words, lines, paragraphs and pages from a textual
document; fields and records belonging to a database; or pixels from a
graphical image. File handeling in any programming language is necessary to
save user’s data in a permanent storage area. There are two kinds of files that
programmers deal with text files and binary files.
Text file
Text file sometime called ASCII text file
A
text file can be a stream of characters that a computer can process
sequentially. It is not only processed sequentially but only in forward direction.
For this reason a text file is usually opened for only one kind of operation
(reading, writing, or appending) at any given time. Generally it deals with
character.
Since
text files only process characters, they can only read or write data one character
at a time. (In C Programming Language, Functions are provided that deal with
lines of text, but these still essentially process data one character at a
time.) A text stream in C is a special kind of file. Depending on the
requirements of the operating system, newline characters may be converted to or
from carriage-return/linefeed combinations depending on whether data is being
written to, or read from, the file. Other character conversions may also occur
to satisfy the storage requirements of the operating system. These translations
occur transparently and they occur because the programmer has signalled the
intention to process a text file.
Binary file
A
binary file is no different to a text file. It is a collection of bytes. In C
Programming Language a byte and a character are equivalent. Hence a binary file
is also referred to as a character stream, but there are two essential
differences.
- No special processing of the data occurs and each byte of data is transferred to or from the disk unprocessed.
- C Programming Language places no constructs on the file, and it may be read from, or written to, in any manner chosen by the programmer.
Binary
files can be either processed sequentially or, depending on the needs of the
application, they can be processed using random access techniques. In C
Programming Language, processing a file using random access techniques involves
moving the current file position to an appropriate place in the file before
reading or writing data. This indicates a second characteristic of binary
files.
They a generally processed using read and write operations simultaneously.
They a generally processed using read and write operations simultaneously.
For
example, a database file will be created and processed as a binary file. A
record update operation will involve locating the appropriate record, reading
the record into memory, modifying it in some way, and finally writing the
record back to disk at its appropriate location in the file. These kinds of
operations are common to many binary files, but are rarely found in applications
that process text files.
File
handeling in c programming
Opening
a file:
The
general format of the function used for opening a file is
FILE *fp;
fp=fopen(“filename”,”mode”);
FILE *fp;
fp=fopen(“filename”,”mode”);
The
first statement declares the variable fp as a pointer to the data type FILE. As
stated earlier, File is a structure that is defined in the I/O Library. The
second statement opens the file named filename and assigns an identifier to the
FILE type pointer fp. fopen() contain the file name and mode (the purpose of
opening the file).
r
is used to open the file for read only.
w is used to open the file for writing only.
a is used to open the file for appending data to it.
w is used to open the file for writing only.
a is used to open the file for appending data to it.
Closing
a File
A
file must be closed as soon as all operations on it have been completed. This
would close the file associated with the file pointer. The input output library
supports the function to close a file.
Syntax
to close file
fclose(filepointer);
Example
program for file handeling.Reading data from firstfile.txt file:-
#include
void main(void)
{
FILE *myfile;
char c;
myfile = fopen("firstfile.txt", "r");
if (myfile == NULL)
#include
void main(void)
{
FILE *myfile;
char c;
myfile = fopen("firstfile.txt", "r");
if (myfile == NULL)
printf("File doesn't exist\n");
else {
do {
c = getc(myfile);
putchar(c);
} while (c != EOF);
}
fclose(myfile);
else {
do {
c = getc(myfile);
putchar(c);
} while (c != EOF);
}
fclose(myfile);
}
No comments:
Post a Comment