Tệp là tập hợp các bản ghi hoặc là một nơi trên đĩa cứng, nơi dữ liệu được lưu trữ vĩnh viễn.
Thao tác trên tệp
Các thao tác trên tệp trong ngôn ngữ lập trình C như sau -
- Đặt tên cho tệp
- Mở tệp
- Đọc từ tệp
- Ghi vào tệp
- Đóng tệp
Cú pháp
Cú pháp để mở một tệp như sau -
FILE *File pointer;
Ví dụ:FILE * fptr;
Cú pháp đặt tên tệp như sau -
File pointer = fopen ("File name", "mode");
Ví dụ,
fptr = fopen ("sample.txt", "r"); FILE *fp; fp = fopen ("sample.txt", "w");Các hàm
putw () và getw ()
putw () hàm được sử dụng để ghi một số vào tệp.
Cú pháp cho hàm putw () như sau -
Cú pháp
putw (int num, FILE *fp);
Ví dụ,
Ví dụ
FILE *fp; int num; putw(num, fp);
getw () hàm được sử dụng để đọc một số từ một tệp.
Cú pháp cho hàm getw () như sau -
Cú pháp
int getw (FILE *fp);
Ví dụ,
Ví dụ
FILE *fp; int num; num = getw(fp);
Logic để viết số vào tệp như sau -
fp = fopen ("num.txt", "w"); for (i =1; i<= 10; i++){ putw (i, fp); } fclose (fp);
Logic để đọc số từ tệp như sau -
fp =fopen ("num.txt", "r"); printf ("file content is\n"); for (i =1; i<= 10; i++){ i= getw(fp); printf ("%d",i); printf("\n"); } fclose (fp);
Chương trình
Sau đây là chương trình C để lưu trữ các số từ 1 đến 10 và in giống nhau -
#include<stdio.h> int main( ){ FILE *fp; int i; fp = fopen ("num.txt", "w"); for (i =1; i<= 10; i++){ putw (i, fp); } fclose (fp); fp =fopen ("num.txt", "r"); printf ("file content is\n"); for (i =1; i<= 10; i++){ i= getw(fp); printf ("%d",i); printf("\n"); } fclose (fp); return 0; }
Đầu ra
Khi chương trình trên được thực thi, nó tạo ra kết quả sau -
file content is 1 2 3 4 5 6 7 8 9 10