Bài 15. Thao tác với tệp

Chia sẻ bởi Nguyễn Phương Thảo | Ngày 10/05/2019 | 63

Chia sẻ tài liệu: Bài 15. Thao tác với tệp thuộc Tin học 11

Nội dung tài liệu:

Bài 15:
THAO TÁC VỚI TỆP
Vai trò của tệp
Phân loại tệp
Khai báo tệp
Thao tác với tệp
NỘI DUNG
1. Vai trò của kiểu tệp
- Về mặt cấu trúc: Tệp như một dãy các ô được đánh số 0, 1 , 2, ….. Mỗi ô chứa một dữ liệu thành phần của tệp.
5
7
3
Cuối tệp
- Tệp là các phần tử có cùng kiểu dữ liệu nhưng số lượng phần tử không giới hạn và được lưu giữ ở bộ nhớ ngoài (USB, ổ cứng….)
1. Vai trò của kiểu tệp
2. Phân loại tệp
3. Khai báo tệp
Trong chương trình Pascal khi chúng ta muốn dùng một biến để chứa dữ liệu, thì việc đầu tiên chúng ta sẽ làm gì?
Khai báo biến
3. Khai báo tệp
Tại sao phải
sử dụng tệp tin?
Dữ liệu không bị mất khi tắt điện và dữ liệu được lưu trữ trên tệp có dung lượng lớn.
3. Khai báo tệp
Khai báo biến
như thế nào?
Var :;
3. Khai báo tệp
Vậy khai báo
biến tệp
như thế nào?
var : text;
Chú ý:
-Tên biến tệp: Không được bắt đầu bằng số, trong tên biến không có khoảng trắng, không chứa các kí tự đặc biệt… , , ., !, #, $, %, &, @)
3. Khai báo tệp
var tep vb : text;
Var tep1,tep2 : text.
Đúng
Sai
Khai báo nào đúng?
4. Thao tác với tệp
Trong lập trình, ta không thao tác trực tiếp với tệp dữ liệu trên đĩa mà thông qua biến tệp.
Gắn tên tệp với biến tệp thực chất là tạo một tham chiếu giữa tệp trên đĩa và biến tệp trong chương trình, làm cho biến tệp trở thành đại diện cho tệp.
a. Gắn tên tệp
4. Thao tác với tệp
Hình 16: Sơ đồ tổng quát
4. Thao tác với tệp
a. Gắn tên tệp
assign(,);
Trong đó:
- tên tệp: Là hằng xâu ký tự hoặc giá trị của một biểu thức kiểu xâu ký tự.
- Độ dài lớn nhất của tên tệp là 79 ký tự.
4. Thao tác với tệp
Phân biệt tên tệp với biến tệp:

- Mỗi tệp có một cái tên, tên tệp là biến xâu hay hằng xâu.
+Ví dụ 1: assign(tep1,‘DULIEU.DAT’);
+Ví dụ 2: tentep=’DL.INP’;
assign(tep1, tentep);
+Ví dụ 3: assign(tep1, ‘C:\DIEM.TXT’);
- Biến tệp là biến sử dụng để tham chiếu tới các phần tử của tệp.
a. Gắn tên tệp
4. Thao tác với tệp
b. Mở tệp
2 kiểu
Mở tệp để ghi
Mở tệp để đọc
rewrite();
reset();
Ví dụ:
assign(tep1, ‘KQ.DAT’);
rewrite(tep1);
Ví dụ:
assign(tep2, ‘KQ.DAT’);
reset(tep2);
4. Thao tác với tệp
c. Đọc/ ghi tệp văn bản

Trong pascal, lệnh nào dùng để đọc dữ liệu? Lệnh nào dùng để ghi dữ liệu?
Lệnh ghi là write
hoặc writeln
Lệnh đọc là read
hoặc readln
4. Thao tác với tệp
c. Đọc/ ghi tệp văn bản
Đọc tệp văn bản:
Ghi tệp văn bản:
read(,);
readln(,);
write(,);
writeln(,);
4. Thao tác với tệp
c. Đọc/ ghi tệp văn bản
Ví dụ:
+ Để đọc dữ liệu từ tệp A ta viết:
read(tepA,x,y,z);
Hoặc readln(tepA,x,y,z);
Chú ý: Các dữ liệu cần đọc tệp gán vào danh sách biến phải lần lượt có kiểu tương ứng với kiểu của biến trong danh sách biến.
4. Thao tác với tệp
c. Đọc/ ghi tệp văn bản
Ví dụ:
+ Để ghi dữ liệu vào tệp B ta viết:
Write(tepB, ‘A=’,a, ‘B=’,b);
Hoặc Writeln(tepB, ‘A=’,a, ‘B=’,b);
Lưu ý: Khi hai kết quả liền nhau cùng là kiểu số thì cần xen vào giữa hai kết quả này một kết quả trung gian là hằng kí tự dấu cách.
Vd: write( tepB,1,’ ‘,2,’ ‘,3);
4. Thao tác với tệp
c. Đọc/ ghi tệp văn bản
Một số hàm và thủ tục thông dụng:

Hàm EOF (): trả về giá trị TRUE khi con trỏ tệp đã ở vị trí cuối tệp.
Hàm EOLN(biến tệp>): trả về giá trị TRUE khi con trỏ tệp đã ở vị trí cuối dòng.
4. Thao tác với tệp
d. Đóng tệp văn bản
Sau khi làm việc xong với tệp ta phải làm gì?
Tại sao ta phải đóng tệp?
Sau khi làm việc xong với tệp cần phải đóng tệp.
Chỉ có đóng tệp thì khi đó hệ thống mới thực sự hoàn tất ghi dữ liệu ra tệp.
4. Thao tác với tệp
d. Đóng tệp văn bản

Câu lệnh dùng thủ tục đóng tệp:




Vd: Close (tepA);
Close (tepB);
Close ();
Ghi nhớ
var : text;

Củng cố
Câu 1:
Câu lệnh dùng mở tệp để ghi?

rewrite(,);
reset (,);
rewite();
reset(biến tệp);
Củng cố
Câu 2:
(1)Var tepA,tepB,tep C: text;
(2)Begin
(3)assign (tepA, ‘Xoai.txt’);
(4)assign (tepB, ‘Me.txt’);
(5)reset(tepA);
(6)read(tepA,A,B,C);
(7)readln(tepA,D,E);
(8)rewrite(tepB);
(9)write(tepB, ‘A=’,A, ‘D=’,);
(10)writeln(tepB, ‘x1=’, (-B-SQRT(B*B-4*A*C))/(2*A):5:3);
(11)close (tepA);
(12)Close (tepB);
(13)Readln;
(14)End.
Khai báo tệp?
Gán tên tệp?
Mở tệp?
Đóng tệp?
Đọc tệp?
Ghi tệp?


BTVN:
Trả lời câu hỏi trong sách bài tập và xem trước ví dụ 1, ví dụ 2 bài 16 trong SGK.
The End
* Một số tài liệu cũ có thể bị lỗi font khi hiển thị do dùng bộ mã không phải Unikey ...

Người chia sẻ: Nguyễn Phương Thảo
Dung lượng: | Lượt tài: 0
Loại file:
Nguồn : Chưa rõ
(Tài liệu chưa được thẩm định)