Cách thức truy cập tệp văn bản là gì

Bài trước Bài sau

Với giải Tin học 11 Chương 5: Tệp và thao tác với tệp hay, chi tiết được biên soạn bám sát nội dung sách giáo khoa Tin học lớp 11 giúp bạn dễ dàng trả lời câu hỏi từ đó đạt điểm cao trong các bài thi môn Tin học 11.

  • Bài 14: Kiểu dữ liệu tệp
  • Bài 15: Thao tác với tệp
  • Bài 16: Ví dụ làm việc với tệp
  • Giải bài tập Tin học 11 trang 89

Tin học 11 Bài 14: Kiểu dữ liệu tệp

1. Vai trò của kiểu tệp

Tất cả các dữ liệu thuộc kiểu dữ liệu đã xét đều được lưu trữ ở trong RAM do đó sẽ mất khi tắt máy. Với một số bài toán có khối lượng dữ liệu lớn, có yêu cầu lưu trữ để xử lí nhiều lần, cần có kiểu dữ liệu tệp file.

Ví dụ:

Ta muốn lưu một bộ test để chấm bài khoảng 1000 học sinh nếu ta nhập tay sẽ rất mất thời gian hoặc là số lượng đầu vào cho chương trình rất lớn khi đó ta cũng cần sử dụng file.

Kiểu dữ liệu tệp có những đặc điểm sau:

+ Được lưu trữ lâu dài ở bộ nhớ ngoài 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 của đĩa.

2. Phân loại tệp và thao tác với tệp

Xét theo các tổ chức dữ liệu:

+ Tệp văn bản: Tệp mà dữ liệu được ghi dưới dạng các kí tự theo mã ASCII . Trong tệp văn bản, dãy kí tự kết thúc bởi kí tự kết thúc dòng hay kí tự kết thúc tệp tạo thành một dòng.

+ Tệp có cấu trúc: Tệp mà cac thành phần của nó được tổ chức theo một cấu trúc nhất định. Tệp nhị phân là một trường hợp riêng của tệp có cấu trúc. Dữ liệu ảnh, âm thanh , thường được lưu trữ dưới dạng tệp có cấu trúc. Mỗi tệp có cấu trúc sẽ có chương trình riêng để đọc tệp đó.

Xét theo cách thức truy cập:

+ Tệp truy cập tuần tự: 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 nó.

Ví dụ: Băng cuốn dây chạy đài CD.

+ Tệp truy cập trực tiếp: Cho phép tham chiếu đến dữ liệu cần truy cập bằng cách xác định trự ctieeps vị chí [thường là số hiệu ]của dữ liệu đó.

Khác với mảng, số lượng phần tử của tệp không cần xác định trước.

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.

Để có thể thao tác với tệp, người lập trình cần tìm hiểu cách thức mà ngôn ngữ lập trình cung cấp để:

+ Khai báo biến tệp;

+ Mở tệp;

+ Đọc/Ghi dữ liệu;

+ Đóng tệp;

..............................................

..............................................

..............................................

Tin học 11 Bài 15: Thao tác với tệp

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;

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. Biến tệp được đại diện cho tệp trong ngông ngữ lập trình.

Để 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>];

Ví dụ 1: Gắn biến tệp tep1 với tệp có tên là DULIEU.DAT.

Assign[tep1,DULIEU.DAT];

Ví dụ 2: Để đọc dữ liệu từ tệp INP.DAT nằm trên thư mục gốc của ổ C.

Assign[tep2,C:\INP.dat];

b] Mở tệp

Sau khi sử dụng thủ tục assign. Ta có thể thực hiện việc đọc ghi dữ liệu.

+ Đối với việc ghi:

Câu lệnh dùng thủ tục mở tệp để ghi dữ liệu có dạng:

Rewrite[<biến tệp>];

Nếu tệp chưa tồn tại thì 1 tệp mới sẽ được tạo với nội dung rỗng. Nếu tệp tồn tại rồi thì nội dung cũ trong tệp sẽ bị xóa.

Ví dụ:

Assign[tep1,C:\INP.dat]; Rewrite[tep1];

Nếu ở đĩa C có tệp INP.dat rồi thì nội dung trong tệp sẽ bị xóa hết. Nếu chưa tồn tại thì tệp sẽ được tạo mới.

+ Đối với việc đọc:

Mở một tệp đã gắn với một biết tệp để đọc ta dùng thủ tục:

Reset[<Biến tệp>];

Ví dụ:

Assign[tep1,DL.INP]; Reset[tep1];

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

Việc đọc ghi tệp văn bản được thực hiện giống như nhập dữ liệu từ bàn phí. 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:

Read[<biến tệp>,<danh sách các biến>]; Readln[<biến tệp>,<danh sách các biến>];

+ Câu lệnh dùng thủ tục để ghi là:

Write[<biến tệp>,<danh sách các biến>]; Writeln[<biến tệp>,<danh sách các biến>];

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 dang chỉ tới cuối tệp.

+ Hàm eoln[<biế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ệ thong mới thực sự hoàn tất việc hi dữ liệu ra tệp.

Cú pháp:

Close[<biến tệp>];

Ví dụ: Chương trình đọc một dòng từ tệp INP sau đó ghi sang tệp OUT

program vdf; uses crt; var f1,f2:text; s:string; begin assign[f1,'INP']; assign[f2,'OUT']; rewrite[f2]; reset[f1]; readln[f1,s]; write[f2,s]; close[f1]; close[f2]; end.

Kết quả:

..............................................

..............................................

..............................................

  • Tải app VietJack. Xem lời giải nhanh hơn!

Để học tốt Tin học lớp 11, nội dung bài học là trả lời câu hỏi, giải bài tập Tin học 11 Bài 14: Kiểu dữ liệu tệp hay nhất, ngắn gọn. Bên cạnh đó là tóm tắt lý thuyết ngắn gọn và bộ câu hỏi trắc nghiệm Tin 11 Bài 14 có đáp án.

1. Vai trò của kiểu tệp

Tất cả các dữ liệu thuộc kiểu dữ liệu đã xét đều được lưu trữ ở trong RAM do đó sẽ mất khi tắt máy. Với một số bài toán có khối lượng dữ liệu lớn, có yêu cầu lưu trữ để xử lí nhiều lần, cần có kiểu dữ liệu tệp file.

Quảng cáo

Ví dụ:

Ta muốn lưu một bộ test để chấm bài khoảng 1000 học sinh nếu ta nhập tay sẽ rất mất thời gian hoặc là số lượng đầu vào cho chương trình rất lớn khi đó ta cũng cần sử dụng file.

Kiểu dữ liệu tệp có những đặc điểm sau:

   + Được lưu trữ lâu dài ở bộ nhớ ngoài và không bị mất khi tắt nguồn điện.

Quảng cáo

   + 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 của đĩa.

2. Phân loại tệp và thao tác với tệp

Xét theo các tổ chức dữ liệu:

   + Tệp văn bản: Tệp mà dữ liệu được ghi dưới dạng các kí tự theo mã ASCII . Trong tệp văn bản, dãy kí tự kết thúc bởi kí tự kết thúc dòng hay kí tự kết thúc tệp tạo thành một dòng.

   + Tệp có cấu trúc: Tệp mà cac thành phần của nó được tổ chức theo một cấu trúc nhất định. Tệp nhị phân là một trường hợp riêng của tệp có cấu trúc. Dữ liệu ảnh, âm thanh ,… thường được lưu trữ dưới dạng tệp có cấu trúc. Mỗi tệp có cấu trúc sẽ có chương trình riêng để đọc tệp đó.

Quảng cáo

Xét theo cách thức truy cập:

   + Tệp truy cập tuần tự: 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 nó.

Ví dụ: Băng cuốn dây chạy đài CD.

   + Tệp truy cập trực tiếp: Cho phép tham chiếu đến dữ liệu cần truy cập bằng cách xác định trự ctieeps vị chí [thường là số hiệu ]của dữ liệu đó.

Khác với mảng, số lượng phần tử của tệp không cần xác định trước.

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.

Để có thể thao tác với tệp, người lập trình cần tìm hiểu cách thức mà ngôn ngữ lập trình cung cấp để:

   + Khai báo biến tệp;

   + Mở tệp;

   + Đọc/Ghi dữ liệu;

   + Đóng tệp;

Xem thêm các bài giải bài tập Tin học lớp 11 hay, chi tiết khác:

Giới thiệu kênh Youtube VietJack

  • Hỏi bài tập trên ứng dụng, thầy cô VietJack trả lời miễn phí!

Đã có app VietJack trên điện thoại, giải bài tập SGK, SBT Soạn văn, Văn mẫu, Thi online, Bài giảng....miễn phí. Tải ngay ứng dụng trên Android và iOS.

Nhóm học tập facebook miễn phí cho teen 2k5: fb.com/groups/hoctap2k5/

Theo dõi chúng tôi miễn phí trên mạng xã hội facebook và youtube:

Nếu thấy hay, hãy động viên và chia sẻ nhé! Các bình luận không phù hợp với nội quy bình luận trang web sẽ bị cấm bình luận vĩnh viễn.

  • Tải app VietJack. Xem lời giải nhanh hơn!

Câu 1: Hãy chọn phương án ghép đúng. Tệp văn bản

A. 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 nó.

B. Cho phép 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í của dữ liệu đó.

C. là tệp mà các phần tử của nó được tổ chức theo một cấu trúc nhất định.

D. là tệp mà dữ liệu được ghi dưới dạng các ký tự theo mã ASCII.     

Hiển thị đáp án

Trả lời: 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. Trong tệp văn bản, dãy kí tự kết thúc bởi kí tự xuống dòng hay kí tự kết thúc tệp tạo thành một dòng.

Đáp án: D

Câu 2: Hãy chọn phương án ghép đúng. Tệp có cấu trúc

A. 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 nó.

B. Cho phép 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í của dữ liệu đó.

C. là tệp mà các phần tử của nó được tổ chức theo một cấu trúc nhất định.

D. là tệp mà dữ liệu được ghi dưới dạng các ký tự theo mã ASCII.     

Hiển thị đáp án

Trả lời: Tệp có cấu trúc là tệp mà các phần tử của nó được tổ chức theo một cấu trúc nhất định. Tệp nhị phân là một trường hợp riêng của tệp có cấu trúc.

Đáp án: C

Câu 3: Hãy chọn phương án ghép đúng. Tệp truy cập tuần tự

A. 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 nó.       

B. Cho phép 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í của dữ liệu đó.

C. là tệp mà các phần tử của nó được tổ chức theo một cấu trúc nhất định.

D. là tệp mà dữ liệu được ghi dưới dạng các ký tự theo mã ASCII.

Hiển thị đáp án

Trả lời: Tệp truy cập tuần tự 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 nó.

Đáp án: A

Câu 4: Hãy chọn phương án ghép đúng. Tệp truy cập trực tiếp

A. 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 nó.

B. Cho phép 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í của dữ liệu đó.    

C. là tệp mà các phần tử của nó được tổ chức theo một cấu trúc nhất định.

D. là tệp mà dữ liệu được ghi dưới dạng các ký tự theo mã ASCII.

Hiển thị đáp án

Trả lời: Tệp truy cập trực tiếp là cách truy cập cho phép 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í [thường là số hiệu] của dữ liệu đó.

Đáp án: B

Câu 5: Dữ liệu kiểu tệp

A. sẽ bị mất hết khi tắt máy.

B. sẽ bị mất hết khi tắt điện đột ngột.

C. không bị mất khi tắt máy hoặc mất điện. 

D. cả A. B. C đều sai.

Hiển thị đáp án

Trả lời: Dữ liệu kiểu tệp được lưu trữ ở bộ nhờ ngoài [đĩa mềm, đĩa cứng, CD. thiết bị nhớ Flash…] → không bị mất đi khi tắt nguồn điện.

Đáp án: C

Câu 6: Phát biểu nào dưới đây là đúng?

A. Các kiểu dữ liệu đều được lưu trữ ở bộ nhớ trong [RAM].

B. Dữ liệu kiểu tệp được lưu trữ ở bộ nhớ trong.

C. Dữ liệu kiểu tệp được lưu trữ ở bộ nhờ ngoài [đĩa mềm, đĩa cứng, CD. thiết bị nhớ Flash].

D. Các dữ liệu trong máy tính đều bị mất đi khi tắt nguồn điện.

Hiển thị đáp án

Trả lời: Dữ liệu kiểu tệp được lưu trữ ở bộ nhờ ngoài [đĩa mềm, đĩa cứng, CD. thiết bị nhớ Flash…] và không bị mất đi khi tắt nguồn điện.

Đáp án: C

Câu 7: Phát biểu nào sau đây là sai?

A. Tệp có cấu trúc 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.

B. Tệp chứa dữ liệu được tổ chức theo một cách thức nhất định gọi là tệp có cấu trúc.

C. Tệp văn bản không thuộc loại tệp có cấu trúc.

D. Tệp văn bản gồm các kí tự theo mã ASCII được phân chia thành một hay nhiều dòng.

Hiển thị đáp án

Trả lời:

+ Tệp có cấu trúc 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.

+ Tệp văn bản gồm các kí tự theo mã ASCII được phân chia thành một hay nhiều dòng.

Tệp văn bản không thuộc loại tệp có cấu trúc.

Đáp án: B

Câu 8: Phát biểu nào sau đây là sai?

A. Có thể truy cập trực tiếp tệp văn bản.      

B. Tệp có cấu trúc có thể truy cập trực tiếp.

C. Tệp có cấu trúc có thể truy cập tuần tự.

D. Truy cập trực tiếp là cách truy cập cho phép 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í [thường là số hiệu] của dữ liệu đó.

Hiển thị đáp án

Trả lời: 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. Trong tệp văn bản các dòng có độ dài khác nhau tùy thuộc vào dãy kí tự kết thúc bởi kí tự xuống dòng hay kí tự kết thúc tệp→ Tệp chỉ có thể truy cập tuần tự [ cho phép bắt đầu từ đầu tệp và đi qua lần lượt tất cả các dữ liệu trước nó].

Đáp án: A

Câu 9: Phát biểu nào sau đây là đúng?

A. Số lượng phần tử của tệp là cố định.

B. Kích thước tệp có thể rất lớn.        

C. Dữ liệu một tệp được lưu trữ trên đĩa thành một vùng dữ liệu liên tục.

D. Tệp lưu trữ lâu dài trên đĩa, không thể xóa tệp trên đĩa.

Hiển thị đáp án

Trả lời: Dữ liệu tệp đươc lưu trữ lâu dài ở bộ nhớ ngoài [đĩa từ, CD…] vì vậy lượng dữ liệu lưu trữ trên tệp [kích thước] là rất lớn, chỉ phụ thuộc vào dung lượng của đĩa.

Đáp án: B

Câu 10: Phát biểu nào sau đây là sai?

A. Tệp nhị phân thuộc loại tệp có cấu trúc.

B. Các dòng trong tệp văn bản có độ dài bằng nhau.       

C. Có thể hiểu nội dung các tệp văn bản khi hiển thị nó trên màn hình trong phần mềm soạn thảo văn bản.

D. Không thể hiểu nội dung các tệp có cấu trúc khi hiển thị nó trên màn hình trong phần mềm soạn thảo văn bản.

Hiển thị đáp án

Trả lời: 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. Trong tệp văn bản các dòng có độ dài khác nhau tùy thuộc vào dãy kí tự kết thúc bởi kí tự xuống dòng hay kí tự kết thúc tệp.

Đáp án: B

Xem thêm các bài Câu hỏi trắc nghiệm Tin học 11 chọn lọc, có đáp án khác:

Giới thiệu kênh Youtube VietJack

  • Hỏi bài tập trên ứng dụng, thầy cô VietJack trả lời miễn phí!

Đã có app VietJack trên điện thoại, giải bài tập SGK, SBT Soạn văn, Văn mẫu, Thi online, Bài giảng....miễn phí. Tải ngay ứng dụng trên Android và iOS.

Nhóm học tập facebook miễn phí cho teen 2k5: fb.com/groups/hoctap2k5/

Theo dõi chúng tôi miễn phí trên mạng xã hội facebook và youtube:

Nếu thấy hay, hãy động viên và chia sẻ nhé! Các bình luận không phù hợp với nội quy bình luận trang web sẽ bị cấm bình luận vĩnh viễn.