Bài giảng Lập trình hướng đối tượng trong C++ - Phạm Thị Quỳnh - Chương 6: Stream và File
I/O trong được xây dựng trên 3 class: istream, ostream và iostream.
C++ coi các file là luồng các byte (stream).
Khi I/O với các file trên đĩa, ta phải sử dụng các lớp ifstream, ofstream, và fstream được định nghĩa trong <fstream.h>.
Chú ý:
ifstream thừa kế từ istream
ofstream thừa kế từ ostream
fstream thừa kế từ iostream
Chương 6: Stream và File Nội dung chính C++ File I/O File nhị phân Con trỏ File 1. C++ File I/O I/O trong được xây dựng trên 3 class: istream, ostream và iostream. C++ coi các file là luồng các byte (stream). Khi I/O với các file trên đĩa, ta phải sử dụng các lớp ifstream, ofstream, và fstream được định nghĩa trong . Chú ý: ifstream thừa kế từ istream ofstream thừa kế từ ostream fstream thừa kế từ iostream Input File Để đọc 100 số từ file numbers.dat, phải khai báo biến có kiểu input file. ifstream data_file; Xác định tên file cần đọc, bằng cách sử dụng hàm open. data_file.open("numbers.dat" ); Đọc dữ liệu từ file ra: for (i = 0; i > data_array[i]; Sau khi sử dụng xong, đóng file lại. data_file.close(); Input File … C++ cho phép gọi open ngay trong hàm tạo: ifstream data_file("numbers.dat"); Khi mở file sử dụng chồng toán tử ! để kiểm tra file có được mở thành công hay không Khi đọc file, để kiểm tra lỗi sử dụng hàm bad. if (data_file.bad()) { cerr >name; cout>age; } void showdata() { cout<<"\n Name:"<<name; cout<<"\n Age:"<<age; } }; Ví dụ … int main(int argc, char* argv[]) { person p; fstream outfile("Person.txt",ios::out|ios::in| ios::binary|ios::app); for(int i=0;i<3;i++) { p.getdata(); outfile.write((char*)(&p),sizeof(p)); } outfile.seekg(0); do { outfile.read((char*)(&p),sizeof(p)); p.showdata(); }while(! outfile.eof()); return 0; }
File đính kèm:
- Bài giảng Lập trình hướng đối tượng trong C++ - Phạm Thị Quỳnh - Chương 6 Stream và File.ppt