Hàm fopen() mở file với chế độ chỉ định. Chế độ "w" (write) sẽ xóa trắng nội dung file nếu đã tồn tại, hoặc tạo file mới nếu chưa có.
Cú pháp
FILE *fopen(const char *filename, const char *mode);
Tham số: filename – tên file; mode – chế độ ("r", "w", "a", "r+"...).
Ví dụ: Đọc kích thước file
File one.txt ban đầu:
This is demo text! This is demo text! This is demo text!
#include <stdio.h>
#include <conio.h>
void main() {
FILE *f;
long len;
f = fopen("one.txt", "r");
if (!f) { perror("Loi mo file"); return; }
fseek(f, 0, SEEK_END);
len = ftell(f);
fclose(f);
printf("Kich thuoc file: %ld bytes", len);
getch();
}
Kết quả
Kich thuoc file: 78 bytes
Giải thích: Mở file "r". fseek(f, 0, SEEK_END) nhảy cuối file. ftell(f) trả về vị trí hiện tại = kích thước file.
Các mode phổ biến:
Thêm
| Mode | Mô tả |
|---|---|
| r | Đọc, file phải tồn tại |
| w | Ghi, xóa nội dung cũ / tạo mới |
| a | Ghi thêm (append), tạo mới nếu chưa có |
| r+ | Đọc/ghi, file phải tồn tại |
| w+ | Đọc/ghi, xóa cũ / tạo mới |
| a+ | Đọc/ghi thêm, tạo mới nếu chưa có |
b cho binary: "rb", "wb"...