Tệp I / O - Tạo, mở, đọc, ghi và đóng tệp
C Quản lý tệp
Tệp có thể được sử dụng để lưu trữ một khối lượng lớn dữ liệu liên tục. Giống như nhiều ngôn ngữ khác, 'C' cung cấp các chức năng quản lý tệp sau đây,
- Tạo tệp
- Mở tệp
- Đọc tệp
- Ghi vào tệp
- Đóng tệp
Sau đây là các chức năng quản lý tệp quan trọng nhất có sẵn trong 'C,'
chức năng | mục đích |
---|---|
fopen () | Tạo tệp hoặc mở tệp hiện có |
fclose () | Đóng tệp |
fprintf () | Ghi một khối dữ liệu vào một tệp |
fscanf () | Đọc dữ liệu khối từ một tệp |
getc () | Đọc một ký tự từ tệp |
putc () | Ghi một ký tự vào tệp |
getw () | Đọc một số nguyên từ một tệp |
putw () | Ghi một số nguyên vào tệp |
fseek () | Đặt vị trí của con trỏ tệp đến một vị trí được chỉ định |
ftell () | Trả về vị trí hiện tại của con trỏ tệp |
tua lại () | Đặt con trỏ tệp ở đầu tệp |
Input: sourcefile = x1.txt targefile = x2.txt Output: File copied successfully.
Giải thích
Trong chương trình này, chúng ta sẽ sao chép một tập tin sang một tập tin khác, trước hết bạn sẽ chỉ định một tập tin để sao chép. Chúng tôi sẽ mở tệp và sau đó đọc tệp mà chúng tôi muốn sao chép ở chế độ "đọc" và tệp đích ở chế độ "ghi".
Ví dụ
#include <iostream> #include <stdlib.h> using namespace std; int main() { char ch;// source_file[20], target_file[20]; FILE *source, *target; char source_file[]="x1.txt"; char target_file[]="x2.txt"; source = fopen(source_file, "r"); if (source == NULL) { printf("Press any key to exit...\n"); exit(EXIT_FAILURE); } target = fopen(target_file, "w"); if (target == NULL) { fclose(source); printf("Press any key to exit...\n"); exit(EXIT_FAILURE); } while ((ch = fgetc(source)) != EOF) fputc(ch, target); printf("File copied successfully.\n"); fclose(source); fclose(target); return 0; }