Cấu trúc và phân loại tệp

Một phần của tài liệu Giáo trình lập trình cấu trúc pascal (Trang 70 - 71)

Chương 13: Dữ liệu kiểu tệp (FILE)

13.2Cấu trúc và phân loại tệp

Các phần tử của Array hoặc Record có thể đ ược truy cập thông qua tên biến và chỉ dẫn hoặc tên trường. Các phần tử của tệp không có tên, vậy truy cập như thế

nào?

Các phần tử của tệp được xếp thành một dãy,ở mỗi thời điểm chỉ có thể truy cập

vào một phần tử của tệp thông qua giá trị của một biến trung gian. Biến trung gian này được dùng để lưu giá trị vị trí truy cập, hay còn gọi là con trỏ tệp.

Tệp được kết thúc bằng một dấu hiệu đặc biệt. Khi gặp dấu hiệu này hàm Boolean Eof (f) (End of file) cho giá trịTrue. Nếu con trỏ tệp chưa trỏ vào phần

Tệp có hai loại: Tệp truy cập tuần tự (sequential access) và tệp truy cập trực tiếp

(direct access).

Việc đọc một phần tử bất kỳ của tệp có cấu trúc tuần tự bắt buộc phải đi qua các

phần tử trước đó. Còn muốn ghi hay thêm một phần tử vào tệp, ta cần phải đặt

con trỏ tệp vào vị trí cuối tệp. Kiểu truy cập n ày là đơn giản nhưng kém linh hoạt. Bộ nhớ ngoài điển hình tương ứng với cấu trúc tuần tự l à băng từ.

Tệp truy cập trực tiếp là tệp có thể đặt con trỏ tệp vào một phần tử bất kỳ của

tệp thông qua số thứ tự của phần tử đó. Không phải bộ nhớ ngoài nào cũng có

thể xây dựng tệp truy cập trực tiếp. Ví dụ băng từ là loại chỉ có thể truy cập tuần

tự. Còn đĩa mềm và đĩa cứng là loại ngoài việc xây dựng tệp tuần tự còn có thể

tạo được truy cập trực tiếp do đầu đọc-ghi có thể được đặt vào một vị trí bất kỳ trên đĩa. Giống như băng ca nhạc muốn chọn một bài phải tua băng qua lại (bắt

buộc truy cập tuần tự) với đĩa ca nhạc việc chọn một bài chỉ việc cho máy biết

chỉ số của bài đó (khả năng truy cập trực tiếp).

Một phần của tài liệu Giáo trình lập trình cấu trúc pascal (Trang 70 - 71)