Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 34 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
34
Dung lượng
303,5 KB
Nội dung
Báo Cáo Bài T p L nậ ớ L P TRÌNH H NG Đ I T NGẬ ƯỚ Ố ƯỢ Giảng viên hướng dẫn: Ngô Công Thắng Nhóm sinh viên thực hiện :(Nhóm 10) Nguyễn Thị Sen Nguyễn Thị Diệp Phạm Ngọc Thắng Hoàng Thị Nga Lớp: Tin Học C-k52 Phần 1:Lý Thuyết A.Tìm hiểu về vào/ra với tệp nhị phân 1.Vào ra t p nh phân b ng read và writeệ ị ằ 2.Ghi m t đ i t ng vào t p nh phânộ ố ượ ệ ị 3.Đ c m t đ i t ng t t p nh phânọ ộ ố ượ ừ ệ ị B.Kỹ thuật bắt lỗi vào ra tệp C. Con trỏ tệp 1.Khái ni mệ 2.Toán t l y đ a ch (&).ử ấ ị ỉ 3.Toán t tham chi uử ế 4.Ví dụ D.Truy nhập trực tiếp vào từng phần tử của tệp 1.Con tr t pỏ ệ 2.Truy nh p v trí hi n t i c a con tr t pậ ị ệ ạ ủ ỏ ệ 3.Ví dụ Phần 2 :Chương trình A. Tìm hi u v vào/ra v i t p nh phânể ề ớ ệ ị Để mở một tệp dưới chế độ nhị phân, ta dùng cú pháp sau: fstream <Tên biến tệp> (<Tên tệp>, ios: : binary) ; Khi đó, các thao tác đọc, ghi trên biến tệp được thực hiện Theo đơn vị byte theo kích thước các bản ghi (cấu trúc) được ghi trong tệp. Ví dụ: Muốn mở tệp tin baitho.txt dưới chế độ nhị phân, ta khai báo như sau: fstream myBaiTho (“baitho.txt”, ios: :binary); 1.Vào ra t p nh phân b ng read và writeệ ị ằ a. Ghi vào tệp nhị phân bằng write: Các bước thực hiện để ghi dữ liệu vào một tệp nhị phân như sau: M t p tin theo ch đ đ ghi nh phân b ng đ i ở ệ ế ộ ể ị ằ ố t ng fstream:ượ fstream <Tên bi n t p> (<Tên t p tin>, ios: : out I ế ệ ệ ios: : binary) ; Ghi d li u vào t p b ng thao tác “write()”:ữ ệ ệ ằ <Tên bi n t p>. write (char* <D li u>,ế ệ ữ ệ int <Kích th c d li u>) ;ướ ữ ệ Đóng t p tin b ng l nh close():ệ ằ ệ <Tên bi n t p>.close ( ) ;ế ệ Trong đó, thao tác write nhận hai tham số Đầu vào như sau: Tham s th c nh t: là con tr ki u char tr đ n ố ứ ấ ỏ ể ỏ ế vùng d li u c n ghi và t p. Vì con tr b t bu c có ữ ệ ầ ệ ỏ ắ ộ ki u char nên khi mu n ghi d ki u có ki u khác vào ể ố ữ ệ ể t p, ta dùng hàm chuy n ki u: ệ ể ể reinterpret_cast<char *> (<D li u>) ;ữ ệ Tham s th hai là kích c d li u đ c ghi vào t p. ố ứ ỡ ữ ệ ượ ệ Kích c này đ c tính theo byte, nên thông th ng ớ ượ ườ ta dùng toán t :ử sizeof (<Ki u d li u>) ;ể ữ ệ Các bước thực hiện để đọc dữ liệu từ một tệp tin nhị phân như sau: M t p tin theo ch đ đ đ c nh phân b ng đ i ở ệ ế ộ ể ọ ị ằ ố t ng fstream ( m t p tin ch đ ghi): fstream ượ ở ệ ỉ ể <Tên bi n t p> (<Tên t p tin>, ios: : I ios: :binary) ;ế ệ ệ Đ c d li u t t p b ng thao tác “read()”:ọ ữ ệ ừ ệ ằ <Tên bi n t p>.read (char* <D li u ra>,ế ệ ữ ệ int <Kích th c d li u>) ;ướ ữ ệ Đóng t p tin b ng l nh close():ệ ằ ệ <Tên bi n t p>.close( ) ;ế ệ b. Đ c d li u t t p nh phân b ng ọ ữ ệ ừ ệ ị ằ read 2. Ghi m t đ i t ng vào t p nh phânộ ố ượ ệ ị //ghi đoi tuong person ra dia #include<fstream.h>// cho vao ra file class person //lop person { protected: char name[40]; //ten nguoi int age; //tuoi public: void getData() //lay du lieu { cout<<”\nNhap vao ten:”;cin>>name; cout<<”\nNhap vao tuoi:”;cin>>age; } }; void main() { person pers;//tao mot doi tuong person pers.getData();//lay du lieu cho nguoi ofstream outfile(“PERSON.DAT”,ios::binary);tao mot doi tuong ofstream outfile.write((char*)&pers,sizeof(pers)); //ghirano } 3.Đ c m t đ i t ng t t p nh phânọ ộ ố ượ ừ ệ ị //doc doi tuong person tu dia #include<fstream.h> //cho vao ra file class person //lop person { protected: char name[40]; //ten nguoi int age; //tuoi public: void showData()//hien thi du lieu { cout<<”\nTen:”<<name; cout<<”\nTuoi:”<<age; } }; void main() { person pers; //tao mot doi tuong person ifstream infile(“PERSON.DAT”,ios::binary);//tao mot doi tuong ifstream infile.read((char*)&pers,sizeof(pers));//doc no } [...]... vào tệp tin if(index%5 == 0) // Hiển thị vị trí con trỏ tệp cout . Phần 1:Lý Thuyết A .Tìm hiểu về vào/ra với tệp nhị phân 1.Vào ra t p nh phân b ng read và writeệ ị ằ 2.Ghi m t đ i t ng vào t p nh phân ố ượ ệ ị 3.Đ c m t đ i t ng t t p nh phân ộ ố ượ ừ ệ ị . ệ 3.Ví dụ Phần 2 :Chương trình A. Tìm hi u v vào/ra v i t p nh phân ề ớ ệ ị Để mở một tệp dưới chế độ nhị phân, ta dùng cú pháp sau: fstream <Tên biến tệp& gt; (<Tên tệp& gt;, ios: : binary). 1.Vào ra t p nh phân b ng read và writeệ ị ằ a. Ghi vào tệp nhị phân bằng write: Các bước thực hiện để ghi dữ liệu vào một tệp nhị phân như sau: M t p tin theo ch đ đ ghi nh phân b ng đ i