Bài 15: Thao tác với tệp | Tin học | Chương 5: Tệp và thao tác với tệp - Lớp 11 - Giáo Dục Việt Nam


Trong mục này ta xét cách khai báo, thao tác với tệp văn bản trong Pascal.

1. Khai báo

Để làm việc với kiểu dữ liệu tệp ta phải sử dụng biến tập.

Khai báo biến tệp văn bản có dạng:
var <tên biến tệp>: text;

Ví dụ
var tepl, tep2: text;

Khai báo trên xác định hai biến tệp văn bản tep1 và tep2.

2. Thao tác với tệp

a) Gắn tên tệp

Mỗi tệp đều có một tên tệp để tham chiếu. Tên tệp là biến xấu hoặc hằng xấu, ví dụ 'DULIEU.DAT'.

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. Có thể hình dung biến tệp được ngôn ngữ lập trình sử dụng như đại diện cho tệp.

Do vậy, để thao tác với tệp, trước hết phải gắn tên tệp với đại diện của nó là biến tập bằng thủ tục:
assign(<biến tệp>,<tên tệp>);
trong đó, tên tệp là biến xấu hoặc hằng xâu.

Sau lệnh này, các thao tác với biến tập thực chất là thao tác với tệp.
hinh-anh-bai-15-thao-tac-voi-tep-4714-0


Ví dụ 1
Giả thiết có biến tệp tepl cần gắn với tệp có tên DULIEU.DAT. Để làm điều này ta thực hiện thủ tục sau:
assign (tep1, 'DULIEU. DAT');

Ví dụ 2
Để có thể đọc dữ liệu từ tệp INP.DAT trên thư mục gốc của đĩa C, ta cần gắn tệp đó với một biến tệp, ví dụ là tep2 bởi thủ tục:
assign (tep2, 'C:\INP. DAT');

b) Mở tệp

Tệp có thể dùng để chứa kết quả ra hoặc dữ liệu vào. Trước khi mở tệp, biến tệp phải được gắn tên tệp bằng thủ tục assign .

Câu lệnh dùng thủ tục mở tệp để ghi dữ liệu có dạng:
rewrite(<hiến tệp>);

Ví dụ
assign (tep3, 'C: \KQ. DAT');
rewrite (tep3);

Khi thực hiện thủ tục rewrite(tep3), nếu trên thư mục gốc của đĩa C chưa có tệp KQ.DAT, thì tệp sẽ được tạo với nội dung rỗng. Nếu đã có, thì nội dung cũ sẽ bị xoá để chuẩn bị ghi dữ liệu mới.

Trước khi đọc dữ liệu từ tệp đã gắn với một biến tệp, ta mở tệp bằng thủ tục: reset (<hiến tệp>);

Ví dụ
Để đọc dữ liệu từ tệp DL.INP, ta có thể mở tệp bằng các thủ tục:
tentep: 'DL. INP';
assign (tepl, tentep);
reset (tepl);

hoặc

assign (tepl, 'DL. INP');
reset (tepl);

c) Đọc/ghi tệp văn bản

Việc đọc tệp văn bản được thực hiện giống như nhập từ bàn phím. Việc ghi dữ liệu ra tệp văn bản giống như ghi ra màn hình. Dữ liệu trong tệp văn bản được chia thành các dòng.

Câu lệnh dùng thủ tục đọc có dạng:
read(<hiến tệp>,<danh sách biến>);

hoặc

readln (<hiến tệp >,<danh sách biến>);

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.

Câu lệnh dùng thủ tục ghi có dạng:
write(<biến tệp>,<danh sách kết quả));

hoặc

writeln(<biến tệp>,<danh sách kết quả >);

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 (số học, quan hệ hoặc lôgic) hoặc hằng xâu. Trường hợp có nhiều phần tử thì các phần tử được phân cách bởi dấu phẩy.

Ví dụ
Giả sử trong chương trình có khai báo:
var tepA, tepB: text;
và tệp tepA được mở để đọc dữ liệu, còn tệp tepB dùng để ghi dữ liệu.

Các thủ tục dùng để đọc dữ liệu từ tệp tepA có thể như sau:
read (tepA, A, B, C);

hoặc

readln (tepA, X, Y);

Các thủ tục dùng để ghi dữ liệu vào tệp tepB có thể như sau:
write (tepB, A, A, B, B, C ',C);
writeln(tepB, X1, (-B - SQRT (B*B- 4*A*C))/(2*A): 8:3);

Một số hàm chuẩn thường dùng trong khi đọc/ghi tệp văn bản:

  • Hàm eof (<biến tệp>) trả về giá trị true nếu con trỏ tệp đang chỉ tới cuối tập.
  • Hàm eoln (<hiến tệp>) trả về giá trị true nếu con trỏ tệp đang chỉ tới cuối dòng.

d) Đóng tệp

Sau khi làm việc xong với tệp cần phải đóng tệp. Việc đóng tệp là đặc biệt quan trọng sau khi ghi dữ liệu, khi đó hệ thống mới thực sự hoàn tất việc ghi dữ liệu ra tệp.

Câu lệnh dùng thủ tục đóng tệp có dạng: close(<hiến tệp>);

Ví dụ
close (tepl);
close (tep3);

Sau khi đóng, một tệp vẫn có thể được mở lại. Khi mở lại tệp, nếu vẫn dùng biến tập cũ thì không cần phải dùng thủ tục assign gắn lại tên tệp.

Các thao tác với tệp được mô tả trong hình 16.

hinh-anh-bai-15-thao-tac-voi-tep-4714-1

Tin tức mới


Đánh giá

Bài 15: Thao tác với tệp | Tin học | Chương 5: Tệp và thao tác với tệp - Lớp 11 - Giáo Dục Việt Nam

Tổng số sao của bài viết là: 5 trong 1 đánh giá
Xếp hạng: 5 / 5 sao

Bình Luận

Để Lại Bình Luận Của Bạn

Tin tức mới

Bộ Sách Lớp 11

Giáo Dục Việt Nam

Bộ Sách Giáo Khoa của Nhà Xuất Bản Giáo Dục Việt Nam

Tài liệu học tập

Đây là tài liệu tham khảo hỗ trợ trong quá trình học tập

Kết Nối Tri Thức Với Cuộc Sống

Sách giáo khoa của nhà xuất bản Kết Nối Tri Thức Với Cuộc Sống

Sách Giáo Dục Việt Nam

Lớp 6

Sách giáo khoa dành cho lớp 6

Lớp 5

Sách giáo khoa dành cho lớp 5

Lớp 4

Sách giáo khoa dành cho lớp 4

Lớp 3

Sách giáo khoa dành cho lớp 3

Lớp 7

Sách giáo khoa dành cho lớp 7

Lớp 8

Sách giáo khoa dành cho lớp 8

Lớp 9

Sách giáo khoa dành cho lớp 9

Lớp 10

Sách giáo khoa dành cho lớp 10

Lớp 11

Sách giáo khoa dành cho lớp 11

Lớp 12

Sách giáo khoa dành cho lớp 12

Liên Kết Chia Sẻ

** Đây là liên kết chia sẻ bới cộng đồng người dùng, chúng tôi không chịu trách nhiệm gì về nội dung của các thông tin này. Nếu có liên kết nào không phù hợp xin hãy báo cho admin.