Kieu_File_trong_Pascal
Chia sẻ bởi Lưu Công Hoàn |
Ngày 14/10/2018 |
25
Chia sẻ tài liệu: Kieu_File_trong_Pascal thuộc Tư liệu tham khảo
Nội dung tài liệu:
File
1.Khái niệm về tệp
Tệp hay tệp dữ liệu là một tập hợp các dữ liệu có liên quan với nhau và có cùng kiểu được nhóm lại với nhau tạo thành một dãy. Chúng thường được chứa trong một thiết bị nhớ ngoài của máy tính (đĩa mềm, đĩa cứng...)
Tệp dữ liệu theo nghĩa rộng : có thể đó là chương trình, có thể là số liệu, có thể là các dữ liệu khác như kí tự, văn bản...
Tệp được lưu trữ trong bộ nhớ ngoài như đĩa cứng, đĩa mềm...Điều đó có nghĩa là tệp được lưu trữ để dùng nhiều lần và tồn tại ngay cả khi chương trình kết thúc hoặc mất điện. Vì vậy nhưng dữ liệu nào cần lưu giữ thì chúng ta bắt buộc phải dùng đến tệp.
Tệp là một kiểu dữ liệu có cấu trúc. Định nghĩa tệp có phần nào giống mảng ở chỗ chúng đều là tập hợp của các phần tử dữ liệu cùng kiểu. Song mảng được khai báo trong chương trình với số phần tử đã xác định, còn số phần tử của tệp không xác định khi định nghĩa
2. Cách định nghĩa tệp trong Pascal
Cách 1
TYPE
Kiểu_tệp = FILE OF kiểu_phần_tử;
Sau đó ta khai báo
VAR Biến_Tệp : Kiểu_tệp;
Cách 2 : khai báo trực tiếp
VAR
Biến_tệp : FILE OF Kiểu_phần_tử;
VD :
TYPE
FileInteger = FILE OF integer;
FileReal = FILE OF real;
FileBoolean = FILE OF Boolean;
Nhan_su = RECORD
Ten : String[30];
Tuoi : Byte;
Luong : Real;
END;
VAR
F1,F2 : FileInteger;
F3 : FileReal;
FNS : FILE OF Nhan_su;
F5 : FILE OF Char;
3.Mở tệp mới để cất dữ liệu
a. Mở tệp để ghi
Pascal dùng 2 thủ tục đi liền nhau theo thứ tự
ASSIGN (Biến_Tệp, Tên_tệp); Gán tên_tệp cho biến_tệp;
REWRITE (Biến_Tệp);
VD : ASSIGN(F1,`NGUYENTO.DAT`);
REWRITE(F1);
Sau khi mở tệp xong, tệp sẽ rỗng vì chưa có phần tử nào, cửa sổ tệp sẽ không có giá trị xác định vì nó trỏ vào cuối tệp (EOF). Lưy ý, nếu trên đĩa có tập tin trùng với tên của tệp mở thì nó sẽ bị xoá đi.
b.Ghi các giá trị vào tệp với thủ tục WRITE
Cách viết
Write (Biến_tệp, Item1, Item2, ... , ItemN);
Trong đó Item1, Item2,...ItemN là các hằng, biến, các biểu thức và phải có giá trị cùng với kiểu phần tử của tệp
VD : Với I,J,K là các biến INTEGER, ta có thể viết :
Write (F1, 3, I+2*J, K, 5);
Bước cuối cùng của việc đặt dữ liệu vào tệp là đóng tệp bằng thủ tục
CLOSE (Biến_Tệp)
VD : CLOSE(F1);
4. Đọc dữ liệu từ một tệp đã có
a. Mở tệp để đọc
Pascal dùng 2 thủ tục đi liền nhau theo thứ tự
ASSIGN (Biến_Tệp, Tên_tệp); Gán tên_tệp cho biến_tệp;
RESET (Biến_Tệp);
VD : ASSIGN(F1,`NGUYENTO.DAT`);
RESET(F1);
Sau khi mở tệp xong, nếu tệp không rỗng thì cửa sổ bao giờ cũng trỏ vào phần tử đầu tiên của tệp
b.Đọc dữ liệu từ tệp
Cách
1.Khái niệm về tệp
Tệp hay tệp dữ liệu là một tập hợp các dữ liệu có liên quan với nhau và có cùng kiểu được nhóm lại với nhau tạo thành một dãy. Chúng thường được chứa trong một thiết bị nhớ ngoài của máy tính (đĩa mềm, đĩa cứng...)
Tệp dữ liệu theo nghĩa rộng : có thể đó là chương trình, có thể là số liệu, có thể là các dữ liệu khác như kí tự, văn bản...
Tệp được lưu trữ trong bộ nhớ ngoài như đĩa cứng, đĩa mềm...Điều đó có nghĩa là tệp được lưu trữ để dùng nhiều lần và tồn tại ngay cả khi chương trình kết thúc hoặc mất điện. Vì vậy nhưng dữ liệu nào cần lưu giữ thì chúng ta bắt buộc phải dùng đến tệp.
Tệp là một kiểu dữ liệu có cấu trúc. Định nghĩa tệp có phần nào giống mảng ở chỗ chúng đều là tập hợp của các phần tử dữ liệu cùng kiểu. Song mảng được khai báo trong chương trình với số phần tử đã xác định, còn số phần tử của tệp không xác định khi định nghĩa
2. Cách định nghĩa tệp trong Pascal
Cách 1
TYPE
Kiểu_tệp = FILE OF kiểu_phần_tử;
Sau đó ta khai báo
VAR Biến_Tệp : Kiểu_tệp;
Cách 2 : khai báo trực tiếp
VAR
Biến_tệp : FILE OF Kiểu_phần_tử;
VD :
TYPE
FileInteger = FILE OF integer;
FileReal = FILE OF real;
FileBoolean = FILE OF Boolean;
Nhan_su = RECORD
Ten : String[30];
Tuoi : Byte;
Luong : Real;
END;
VAR
F1,F2 : FileInteger;
F3 : FileReal;
FNS : FILE OF Nhan_su;
F5 : FILE OF Char;
3.Mở tệp mới để cất dữ liệu
a. Mở tệp để ghi
Pascal dùng 2 thủ tục đi liền nhau theo thứ tự
ASSIGN (Biến_Tệp, Tên_tệp); Gán tên_tệp cho biến_tệp;
REWRITE (Biến_Tệp);
VD : ASSIGN(F1,`NGUYENTO.DAT`);
REWRITE(F1);
Sau khi mở tệp xong, tệp sẽ rỗng vì chưa có phần tử nào, cửa sổ tệp sẽ không có giá trị xác định vì nó trỏ vào cuối tệp (EOF). Lưy ý, nếu trên đĩa có tập tin trùng với tên của tệp mở thì nó sẽ bị xoá đi.
b.Ghi các giá trị vào tệp với thủ tục WRITE
Cách viết
Write (Biến_tệp, Item1, Item2, ... , ItemN);
Trong đó Item1, Item2,...ItemN là các hằng, biến, các biểu thức và phải có giá trị cùng với kiểu phần tử của tệp
VD : Với I,J,K là các biến INTEGER, ta có thể viết :
Write (F1, 3, I+2*J, K, 5);
Bước cuối cùng của việc đặt dữ liệu vào tệp là đóng tệp bằng thủ tục
CLOSE (Biến_Tệp)
VD : CLOSE(F1);
4. Đọc dữ liệu từ một tệp đã có
a. Mở tệp để đọc
Pascal dùng 2 thủ tục đi liền nhau theo thứ tự
ASSIGN (Biến_Tệp, Tên_tệp); Gán tên_tệp cho biến_tệp;
RESET (Biến_Tệp);
VD : ASSIGN(F1,`NGUYENTO.DAT`);
RESET(F1);
Sau khi mở tệp xong, nếu tệp không rỗng thì cửa sổ bao giờ cũng trỏ vào phần tử đầu tiên của tệp
b.Đọc dữ liệu từ tệp
Cách
* 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ẻ: Lưu Công Hoàn
Dung lượng: 59,00KB|
Lượt tài: 0
Loại file: doc
Nguồn : Chưa rõ
(Tài liệu chưa được thẩm định)