Bài 14. Kiểu dữ liệu tệp
Chia sẻ bởi nguyễn thị như |
Ngày 10/05/2019 |
48
Chia sẻ tài liệu: Bài 14. Kiểu dữ liệu tệp thuộc Tin học 11
Nội dung tài liệu:
CHƯƠNG V: TỆP VÀ THAO TÁC VỚI TỆP
BÀI 14-15: KIỂU DỮ LIỆU TỆP VÀ
THAO TÁC VỚI TỆP
Bài 14:
Kiểu Dữ
Liệu
Tệp
1. Vai trò của kiểu tệp:
2. Phân loại tệp và thao tác với tệp
1. Vai trò của kiểu tệp
-Dữ liệu kiểu tệp được lưu trữ lâu dài ở bộ nhớ ngoài ( đĩa từ, CD,…) và không bị mất khi tắt nguồn điện.
-Lượng dữ liệu lưu trữ trên tệp có thể rất lớn và chỉ phụ thuộc vào dung lượng đĩa.
2. Phân loại tệp
a, Xét theo cách tổ chức dữ liệu
Tệp văn bản
-Là tệp mà dữ liệu được ghi dưới dạng các ký tự theo mã ASCII
Tệp có cấu trúc
-Là tệp mà thành phần của nó được tổ chức theo một cấu trúc nhất định
b, Xét theo cách thức truy cập
Tệp truy cập tuần tự
Tệp truy cập trực tiếp
-Cho phép truy cập đến một dữ liệu nào đó trong tệp chỉ bằng cách bắt đầu từ đầu tệp và đi qua lần lượt tất cả các dữ liệu trước đó
-Tham chiếu đến dữ liệu cần truy cập bằng cách xác định trực tiếp vị trí (số hiệu) của dữ liệu đó
c,Thao tác với tệp:
+ Đọc tệp: Lấy thông tin từ tệp mà không làm thay đổi nội dung của tệp
+ Ghi tệp: Làm thay đổi nội dung của tệp
Muốn thao tác với tệp, cần biết các cách thức:
+Khai báo biến tệp;
+Mở tệp;
+Đọc/ghi dữ liệu;
+Đóng tệp.
Bài 15:
Thao Tác
Với Tệp
-Khai báo biến tệp văn bản có dạng:
Ví dụ:
Var tep1, tep2 : text;
Trong đó : tep1, tep2: là tên biến tệp do người sử dụng đặt
Var: text;
1. Khai báo
a. Gắn tên tệp
Cú pháp:
Trong đó, là biến xâu hoặc hằng xâu.
Tác dụng:
Gắn với đại diện của nó là
ASSIGN (,);
2. Thao tác với tệp
Ví dụ 1: Giả sử có biến tệp tep1 cần gắn với tệp có tên DULIEU.DAT
Thủ tục:
Assign(tep1, ’ DULIEU.DAT’);
Ví dụ 2: Để có thể đọc dữ liệu từ tệp BAITAP.DAT trên thư mục gốc ở đĩa C, ta cần gắn tệp đó với một biến tệp tep2
Thủ tục:
Assign(tep2, ‘C:BAITAP.DAT’);
*Mở tệp để ghi dữ liệu
Cú pháp:
b, Mở tệp
Ví dụ:
Assign (tep3, ‘VOTIN11’);
Rewrite(tep3);
Rewrite ();
*Mở tệp để đọc dữ liệu
Cú pháp:
Reset();
Ví dụ 3: Đọc dữ liệu từ tệp VOTIN11, ta có thế mở tệp bằng thủ tục:
Tentep:= ‘VOTIN11’;
Assign(tep1,tentep);
Reset(tep1);
hoặc
Assign(tep1, ‘VOTIN11’);
Reset(tep1);
c, Đọc/ghi tệp văn bản
Thủ tục đọc dữ liệu từ tệp:
Read (,);
Readln (,);
Hoặc
Trong đó:
-Danh sách biến là một hoặc nhiều tên biến đơn.
-Trong trường hợp nhiều biến thì các biến phân cách nhau bởi dấu phẩy.
* Thủ tục ghi dữ liệu ra tệp
Write (,);
Writeln (,);
Hoặc
Trong đó:
-Danh sách kết quả gồm một hoặc nhiều phần tử.
-Phần tử có thể là biến đơn hoặc biểu thức hoặc hằng xâu. Trường hợp nhiều phần tử thì các phần tử được phân cách nhau bởi dấu phấy
Ví du 4̣: Giả sử trong chương trình có khai báo:
Var tepA, tepB: text;
a,b,c: integer;
Và tepA được mở để đọc dữ liệu, còn tepB dùng để ghi dữ liệu.
-Thủ tục dùng để đọc dữ liệu từ tepA viết như sau:
Read (tepA, a,b,c);
Hoặc Readln (tepA, a,b,c);
-Thủ tục dùng để ghi dữ liệu vào tepB viết như sau:
Write(tepB,’a= ‘, a,’b= ‘, b,’c=‘ ,c);
Hoặc Writeln (tepB,’a= ‘, a,’b= ‘, b,’c=‘ ,c);
EOF ();
Cho biết con trỏ tệp đã ở vị trí cuối tệp hay chưa. Nếu trỏ tệp ở cuối tệp thì hàm EOF trả lại giá trị TRUE.
EOLN ();
Cho biết con trỏ tệp đã ở vị trí cuối dòng hay chưa. Nếu trỏ tệp ở cuối dòng thì hàm EOLN trả lại giá trị TRUE.
Một số hàm chuẩn dùng khi đọc /ghi tệp văn bản:
Tác dụng của lệnh:
- Đóng tệp để tránh mất mát thông tin.
- Đây là việc làm cần thiết để đảm bảo an toàn dữ liệu.
d, Đóng tệp
Cú pháp:
CLOSE();
Ví dụ 5:
Close(tep1);
Close(tep3);
Sơ đồ liên hệ giữa các thao tác với tệp
BÀI TẬP CỦNG CỐ
Câu 1: Trong Pascal để khai báo biến tệp văn bản ta sử dụng cú pháp
Var: Text;
Var: Text;
Var: string;
Var: string;
I. Hãy chọn phương án trả lời đúng nhất
Câu 2: Để gắn tệp KQ.TXT cho biến tệp f1 ta sử dụng câu lệnh:
f1:=‘KQ.TXT’;
KQ.TXT:=f1;
Assign(‘KQ.TXT’,f1);
Assign(f1, ‘KQ.TXT’);
BÀI 14-15: KIỂU DỮ LIỆU TỆP VÀ
THAO TÁC VỚI TỆP
Bài 14:
Kiểu Dữ
Liệu
Tệp
1. Vai trò của kiểu tệp:
2. Phân loại tệp và thao tác với tệp
1. Vai trò của kiểu tệp
-Dữ liệu kiểu tệp được lưu trữ lâu dài ở bộ nhớ ngoài ( đĩa từ, CD,…) và không bị mất khi tắt nguồn điện.
-Lượng dữ liệu lưu trữ trên tệp có thể rất lớn và chỉ phụ thuộc vào dung lượng đĩa.
2. Phân loại tệp
a, Xét theo cách tổ chức dữ liệu
Tệp văn bản
-Là tệp mà dữ liệu được ghi dưới dạng các ký tự theo mã ASCII
Tệp có cấu trúc
-Là tệp mà thành phần của nó được tổ chức theo một cấu trúc nhất định
b, Xét theo cách thức truy cập
Tệp truy cập tuần tự
Tệp truy cập trực tiếp
-Cho phép truy cập đến một dữ liệu nào đó trong tệp chỉ bằng cách bắt đầu từ đầu tệp và đi qua lần lượt tất cả các dữ liệu trước đó
-Tham chiếu đến dữ liệu cần truy cập bằng cách xác định trực tiếp vị trí (số hiệu) của dữ liệu đó
c,Thao tác với tệp:
+ Đọc tệp: Lấy thông tin từ tệp mà không làm thay đổi nội dung của tệp
+ Ghi tệp: Làm thay đổi nội dung của tệp
Muốn thao tác với tệp, cần biết các cách thức:
+Khai báo biến tệp;
+Mở tệp;
+Đọc/ghi dữ liệu;
+Đóng tệp.
Bài 15:
Thao Tác
Với Tệp
-Khai báo biến tệp văn bản có dạng:
Ví dụ:
Var tep1, tep2 : text;
Trong đó : tep1, tep2: là tên biến tệp do người sử dụng đặt
Var
1. Khai báo
a. Gắn tên tệp
Cú pháp:
Trong đó,
Tác dụng:
Gắn
ASSIGN (
2. Thao tác với tệp
Ví dụ 1: Giả sử có biến tệp tep1 cần gắn với tệp có tên DULIEU.DAT
Thủ tục:
Assign(tep1, ’ DULIEU.DAT’);
Ví dụ 2: Để có thể đọc dữ liệu từ tệp BAITAP.DAT trên thư mục gốc ở đĩa C, ta cần gắn tệp đó với một biến tệp tep2
Thủ tục:
Assign(tep2, ‘C:BAITAP.DAT’);
*Mở tệp để ghi dữ liệu
Cú pháp:
b, Mở tệp
Ví dụ:
Assign (tep3, ‘VOTIN11’);
Rewrite(tep3);
Rewrite (
*Mở tệp để đọc dữ liệu
Cú pháp:
Reset(
Ví dụ 3: Đọc dữ liệu từ tệp VOTIN11, ta có thế mở tệp bằng thủ tục:
Tentep:= ‘VOTIN11’;
Assign(tep1,tentep);
Reset(tep1);
hoặc
Assign(tep1, ‘VOTIN11’);
Reset(tep1);
c, Đọc/ghi tệp văn bản
Thủ tục đọc dữ liệu từ tệp:
Read (
Readln (
Hoặc
Trong đó:
-Danh sách biến là một hoặc nhiều tên biến đơn.
-Trong trường hợp nhiều biến thì các biến phân cách nhau bởi dấu phẩy.
* Thủ tục ghi dữ liệu ra tệp
Write (
Writeln (
Hoặc
Trong đó:
-Danh sách kết quả gồm một hoặc nhiều phần tử.
-Phần tử có thể là biến đơn hoặc biểu thức hoặc hằng xâu. Trường hợp nhiều phần tử thì các phần tử được phân cách nhau bởi dấu phấy
Ví du 4̣: Giả sử trong chương trình có khai báo:
Var tepA, tepB: text;
a,b,c: integer;
Và tepA được mở để đọc dữ liệu, còn tepB dùng để ghi dữ liệu.
-Thủ tục dùng để đọc dữ liệu từ tepA viết như sau:
Read (tepA, a,b,c);
Hoặc Readln (tepA, a,b,c);
-Thủ tục dùng để ghi dữ liệu vào tepB viết như sau:
Write(tepB,’a= ‘, a,’b= ‘, b,’c=‘ ,c);
Hoặc Writeln (tepB,’a= ‘, a,’b= ‘, b,’c=‘ ,c);
EOF (
Cho biết con trỏ tệp đã ở vị trí cuối tệp hay chưa. Nếu trỏ tệp ở cuối tệp thì hàm EOF trả lại giá trị TRUE.
EOLN (
Cho biết con trỏ tệp đã ở vị trí cuối dòng hay chưa. Nếu trỏ tệp ở cuối dòng thì hàm EOLN trả lại giá trị TRUE.
Một số hàm chuẩn dùng khi đọc /ghi tệp văn bản:
Tác dụng của lệnh:
- Đóng tệp để tránh mất mát thông tin.
- Đây là việc làm cần thiết để đảm bảo an toàn dữ liệu.
d, Đóng tệp
Cú pháp:
CLOSE(
Ví dụ 5:
Close(tep1);
Close(tep3);
Sơ đồ liên hệ giữa các thao tác với tệp
BÀI TẬP CỦNG CỐ
Câu 1: Trong Pascal để khai báo biến tệp văn bản ta sử dụng cú pháp
Var
Var
Var
Var
I. Hãy chọn phương án trả lời đúng nhất
Câu 2: Để gắn tệp KQ.TXT cho biến tệp f1 ta sử dụng câu lệnh:
f1:=‘KQ.TXT’;
KQ.TXT:=f1;
Assign(‘KQ.TXT’,f1);
Assign(f1, ‘KQ.TXT’);
* 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 thị như
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)