01/10/2018, 16:41

Hỏi về Cách đọc ghi file trong C

Tình hình là mình đang học file trong C. nhưng thấy tài liệu thầy cho phân chia ra 2 kiểu file nhị phân và file văn bản. Mỗi loại lại có 1 list các hàm riêng để làm việc.
Mình thấy taig liệu dạy phần file nhị phân ngoài fopen fclose ra thì đọc ghi file nhị phân chỉ có 2 hàm fread và fwrite. Nhưng khi mình mở 1 file nhị phân và dùng hàm nhập fputc của file văn bản thì thấy vẫn nhập dc.
Các tiền bối đi trước chỉ dùm mình rằng có thực sự là mỗi loại file có hàm làm việc riêng k hay cả 2 loại đều dùng dc all hàm thao tác với file. thanks.

Trương Tấn Phát viết 18:47 ngày 01/10/2018

Văn bản hay là gì thì cũng nhị phân cả. Bản chất mọi dữ liệu đều được lưu trữ dưới dạng nhị phân mà.

Nguyen Trong Dung viết 18:50 ngày 01/10/2018

ý là file văn bản cũng dùng dc các hàm fread fwrite
và file binary cũng dùng dc fputs fgets fprintf… hả b

Trương Tấn Phát viết 18:50 ngày 01/10/2018

Đúng vậy rồi.
Bạn vẫn có thể dùng fwrite/fread để ghi/đọc văn bản bình thường.
Ghi cái gì thì trong tập tin ấy có cái đấy thôi.

rogp10 viết 18:53 ngày 01/10/2018

https://wiki.sei.cmu.edu/confluence/pages/viewpage.action?pageId=87152233

Text mode rất uyển chuyển chỗ kí tự xuống dòng và các kí tự đặc biệt (vì nó là text!). Binary mode thì có sao ghi vậy.

Thứ hai, fread không phải lúc nào trả về cái gì cũng kết thúc bằng byte 0. Vậy nó là binary.

Bài liên quan
0