Bài 14. Kiểu dữ liệu tệp
Chia sẻ bởi Trần Sĩ Nguyên |
Ngày 10/05/2019 |
54
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:
Bài 14,15
Kiểu dữ liệu tệp và thao tác với tệp
Giáo án điện tử tin học lớp 11
1. Vai trò 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 thông tin lưu trữ trên tệp có thể rất lớn và chỉ phụ thuộc vào dung lượng đĩa.
Xét theo cách tổ chức dữ liệu:
Tệp có cấu trúc
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.
Sách, giáo án, tài liệu,… thường lưu trữ dưới dạng tệp văn bản
Là tệp mà các thành phần của nó được tổ chức theo một cấu trúc nhất định
Hình ảnh, âm thanh,… thường lưu trữ dưới dạng tệp có cấu trúc
Dưới đây ta chỉ xét các khai báo và làm việc với tệp văn bản.
2. Phân loại tệp
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
Hai thao tác cơ bản đối với tệp là ghi dữ liệu vào tệp và đọc dữ liệu từ tệp.
Thao tác đọc/ghi với tệp được thực hiện với từng phần tử của tệp
3. Khai báo biến tệp văn bản
VAR : TEXT;
Program vd1;
Uses crt;
Var
tep1,tep2: TEXT;
4. Thao tác với tệp
Gắn tên tệp
Mở tệp để ghi
Mở tệp để đọc
Ghi dữ liệu ra tệp
Đọc dữ liệu từ tệp
Đóng tệp
a. Gắn tên tệp
ASSIGN (,);
Tên tệp: Là biến xâu hoặc hằng xâu.
ASSIGN(tep1, ‘DULIEU.DAT’);
ASSIGN(tep2, ‘D:TPBAITAP.INP’);
Ví dụ:
Bi?n tep1 du?c g?n v?i t?p cú tờn DULIEU.DAT
Biến tep2 được gắn với tệp có tên BAITAP.INP trong thư mục TP ở ổ đĩa D.
Biến tệp: Đại diện cho tệp khi lập trình.
b. M? t?p
REWRITE ();
Thủ tục mở tệp để ghi kết quả:
Nếu như trên ổ D:TP chưa có tệp BAITAP.INP, thì tệp sẽ được tạo rỗng. Nếu đã có, thì nội dung cũ bị xoá để chuẩn bị ghi dữ liệu mới.
Program vd1;
Uses crt;
Var
tep1,tep2: TEXT;
BEGIN
Clrscr;
ASSIGN(tep1, ‘D:TPBAITAP.INP’);
REWRITE(tep1);
Th? t?c ghi d? li?u ra t?p
? Danh sỏch k?t qu? g?m m?t hay nhi?u ph?n t? phõn cỏch b?i d?u ph?y. Ph?n t? cú th? l bi?n, h?ng xõu ho?c bi?u th?c.
c. Ghi dữ liệu ra tệp
WRITE(,);
WRITELN(,);
Program vd1;
Uses crt;
Var
tep1,tep2: TEXT;
a, b: integer;
BEGIN
Clrscr;
ASSIGN(tep1, ‘D:TPBAITAP.INP’);
REWRITE(tep1);
a:=1; b:=2;
write(tep1,a,’ ‘,b);
Giá trị hai biến a=1, b=2 được ghi ở trong tệp BAITAP.INP.
RESET()
Thủ tục mở tệp để đọc dữ liệu
Th? t?c d?c d? li?u t? t?p:
d. Đọc dữ liệu từ tệp
READ(,);
? Danh sỏch bi?n l m?t ho?c nhi?u bi?n don, cỏc bi?n phõn cỏch b?i d?u ph?y.
READLN (,);
Program vd1;
Uses crt;
Var
tep1,tep2: TEXT;
a, b,x,y: integer;
BEGIN
Clrscr;
ASSIGN(tep1, ‘D:TPBAITAP.INP’);
REWRITE(tep1);
a:=1; b:=2;
write(tep1,a,’ ‘,b);
writeln(‘Hai so la:’,x:5,y:5);
RESET(tep1);
readln(tep1, x,y);
e. Thủ tục đóng tệp
CLOSE(< TấN BI?N T?P>);
Program vd1;
Uses crt;
Var
tep1,tep2: TEXT;
a, b,x,y: integer;
BEGIN
ASSIGN(tep1, ‘D:TPBAITAP.INP’);
REWRITE(tep1);
a:=1; b:=2;
write(tep1,a,’ ‘,b);
RESET(tep1);
readln(tep1, x,y);
writeln(‘Hai so la:’,x:5,y:5);
END.
Sau khi thực hiện lệnh đóng tệp thì hệ thống mới hoàn tất việc ghi dữ liệu ra tệp.
close(tep1);
f. Một số hàm chuẩn thường dùng trong xử lí tệp văn bản
EOF();
Cho giỏ tr? dỳng n?u con tr? dang ch? t?i cu?i t?p.
EOLN();
Cho giỏ tr? dỳng n?u con tr? dang ch? t?i cu?i dũng.
Hãy nhớ!
? Khai bỏo t?p van b?n:
Var < Tờn bi?n t?p>: Text;
Gán tên tệp:
ASSIGN();
Mở tệp:
- Để đọc: RESET();
- Để ghi: REWRITE(< Tên biến tệp>);
Đóng tệp
CLOSE(< tªn biÕn tÖp>);
Đọc/ghi tệp
Đọc: READ(, biến nhận);
Ghi: REWRITE(< Tên biến tệp>,biến đưa ra);
Kiểu dữ liệu tệp và thao tác với tệp
Giáo án điện tử tin học lớp 11
1. Vai trò 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 thông tin lưu trữ trên tệp có thể rất lớn và chỉ phụ thuộc vào dung lượng đĩa.
Xét theo cách tổ chức dữ liệu:
Tệp có cấu trúc
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.
Sách, giáo án, tài liệu,… thường lưu trữ dưới dạng tệp văn bản
Là tệp mà các thành phần của nó được tổ chức theo một cấu trúc nhất định
Hình ảnh, âm thanh,… thường lưu trữ dưới dạng tệp có cấu trúc
Dưới đây ta chỉ xét các khai báo và làm việc với tệp văn bản.
2. Phân loại tệp
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
Hai thao tác cơ bản đối với tệp là ghi dữ liệu vào tệp và đọc dữ liệu từ tệp.
Thao tác đọc/ghi với tệp được thực hiện với từng phần tử của tệp
3. Khai báo biến tệp văn bản
VAR
Program vd1;
Uses crt;
Var
tep1,tep2: TEXT;
4. Thao tác với tệp
Gắn tên tệp
Mở tệp để ghi
Mở tệp để đọc
Ghi dữ liệu ra tệp
Đọc dữ liệu từ tệp
Đóng tệp
a. Gắn tên tệp
ASSIGN (
Tên tệp: Là biến xâu hoặc hằng xâu.
ASSIGN(tep1, ‘DULIEU.DAT’);
ASSIGN(tep2, ‘D:TPBAITAP.INP’);
Ví dụ:
Bi?n tep1 du?c g?n v?i t?p cú tờn DULIEU.DAT
Biến tep2 được gắn với tệp có tên BAITAP.INP trong thư mục TP ở ổ đĩa D.
Biến tệp: Đại diện cho tệp khi lập trình.
b. M? t?p
REWRITE (
Thủ tục mở tệp để ghi kết quả:
Nếu như trên ổ D:TP chưa có tệp BAITAP.INP, thì tệp sẽ được tạo rỗng. Nếu đã có, thì nội dung cũ bị xoá để chuẩn bị ghi dữ liệu mới.
Program vd1;
Uses crt;
Var
tep1,tep2: TEXT;
BEGIN
Clrscr;
ASSIGN(tep1, ‘D:TPBAITAP.INP’);
REWRITE(tep1);
Th? t?c ghi d? li?u ra t?p
? Danh sỏch k?t qu? g?m m?t hay nhi?u ph?n t? phõn cỏch b?i d?u ph?y. Ph?n t? cú th? l bi?n, h?ng xõu ho?c bi?u th?c.
c. Ghi dữ liệu ra tệp
WRITE(
WRITELN(
Program vd1;
Uses crt;
Var
tep1,tep2: TEXT;
a, b: integer;
BEGIN
Clrscr;
ASSIGN(tep1, ‘D:TPBAITAP.INP’);
REWRITE(tep1);
a:=1; b:=2;
write(tep1,a,’ ‘,b);
Giá trị hai biến a=1, b=2 được ghi ở trong tệp BAITAP.INP.
RESET(
Thủ tục mở tệp để đọc dữ liệu
Th? t?c d?c d? li?u t? t?p:
d. Đọc dữ liệu từ tệp
READ(
? Danh sỏch bi?n l m?t ho?c nhi?u bi?n don, cỏc bi?n phõn cỏch b?i d?u ph?y.
READLN (
Program vd1;
Uses crt;
Var
tep1,tep2: TEXT;
a, b,x,y: integer;
BEGIN
Clrscr;
ASSIGN(tep1, ‘D:TPBAITAP.INP’);
REWRITE(tep1);
a:=1; b:=2;
write(tep1,a,’ ‘,b);
writeln(‘Hai so la:’,x:5,y:5);
RESET(tep1);
readln(tep1, x,y);
e. Thủ tục đóng tệp
CLOSE(< TấN BI?N T?P>);
Program vd1;
Uses crt;
Var
tep1,tep2: TEXT;
a, b,x,y: integer;
BEGIN
ASSIGN(tep1, ‘D:TPBAITAP.INP’);
REWRITE(tep1);
a:=1; b:=2;
write(tep1,a,’ ‘,b);
RESET(tep1);
readln(tep1, x,y);
writeln(‘Hai so la:’,x:5,y:5);
END.
Sau khi thực hiện lệnh đóng tệp thì hệ thống mới hoàn tất việc ghi dữ liệu ra tệp.
close(tep1);
f. Một số hàm chuẩn thường dùng trong xử lí tệp văn bản
EOF(
Cho giỏ tr? dỳng n?u con tr? dang ch? t?i cu?i t?p.
EOLN(
Cho giỏ tr? dỳng n?u con tr? dang ch? t?i cu?i dũng.
Hãy nhớ!
? Khai bỏo t?p van b?n:
Var < Tờn bi?n t?p>: Text;
Gán tên tệp:
ASSIGN(
Mở tệp:
- Để đọc: RESET(
- Để ghi: REWRITE(< Tên biến tệp>);
Đóng tệp
CLOSE(< tªn biÕn tÖp>);
Đọc/ghi tệp
Đọc: READ(
Ghi: REWRITE(< Tên biến tệp>,biến đưa ra);
* 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ẻ: Trần Sĩ Nguyên
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)