Bài tập  /  Bài đang cần trả lời

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

1 Xem trả lời
Hỏi chi tiết
1.191
0
0
CenaZero♡
07/04/2018 13:22:05

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ả:

Giải bài tập Tin học 11 | Để học tốt Tin học 11

Mở khóa để xem toàn bộ nội dung trả lời

(?)
Bạn đã đạt đến giới hạn của mình. Bằng cách Đăng ký tài khoản, bạn có thể xem toàn bộ nội dung trả lời
Cải thiện điểm số của bạn bằng cách đăng ký tài khoản Lazi.
Xem toàn bộ các câu trả lời, chat trực tiếp 1:1 với đội ngũ Gia sư Lazi bằng cách Đăng nhập tài khoản ngay bây giờ
Tôi đã có tài khoản? Đăng nhập

Bạn hỏi - Lazi trả lời

Bạn muốn biết điều gì?

GỬI CÂU HỎI
Học tập không giới hạn cùng học sinh cả nước và AI, sôi động, tích cực, trải nghiệm

Hôm nay bạn thế nào? Hãy nhấp vào một lựa chọn, nếu may mắn bạn sẽ được tặng 50.000 xu từ Lazi

Vui Buồn Bình thường
×
Trợ lý ảo Trợ lý ảo
×
Đấu trường tri thức | Lazi Quiz Challenge +500k
Gửi câu hỏi
×