In Chapter 5, "Reading from and Writing to Standard I/O," you learned how to read or write characters through standard input or output. In this lesson you'll learn to read data from or write data to disk files. The following topics are discussed in this lesson:
Files and streams
Opening a file with fopen()
Closing a file with fclose()
The fgetc() and fputc() functions
The fgets() and fputs() functions
The fread() and fwrite() functions
The feof() function
Summary
- In C, a file can refer to a disk file, a terminal, a printer, or a tape drive.
- The data flow you transfer from your program to a file, or vice versa, is called a stream.
- A stream is a series of ordered bytes.
- Not like a file, a stream is device-independent.
- There are two stream formats: text stream and binary stream.
- The file position indicator in the FILE structure points to the position in a file where data will be read from or written to.
- The fopen() function is used to open a file and associate a stream to the opened file.
- You can specify different modes for opening a file.
- The fclose() function is responsible for closing an opened file and disassociating a stream with the file.
- The fgetc() and fputc() functions read or write one character at a time.
- The fgets() and fputs() functions read or write one line at a time.
- The fread() and fwrite() functions read or write one block of data at a time.
- The feof() function can determine when the end of a file has been reached.
- In a binary file, the feof() function should be used to detect EOF.
- 87 views