Nếu đã có, thì nội dung cũ bị xoá để chuẩn bÞ ghi d÷ liÖu míi.... Thñ tôc ghi d÷ liÖu ra tÖp.[r]
(1)Bµi 17 GIÁO VIÊN: NGUYỄN TRUNG KIÊN Gi¸o ¸n ®iÖn tö tin häc líp 11 Lop11.com (2) Vai trß kiÓu tÖp D÷ liÖu kiÓu tÖp ® îc lutr÷ l©u dµi ë nhớ ngoài (đĩa từ, CD, ) và kh«ng bÞ mÊt t¾t nguån ®iÖn Lượngthông tin lưutrữ trên tệp có thể rÊt lín vµ chØ phô thuéc vµo dung lượngđĩa Lop11.com (3) Có hai loại tệp thườngdùng: Tệp định kiểu TÖp v¨n b¶n Lµ tÖp mµ c¸c phÇn tö cã cïng mét kiÓu Sè lượngphần tử không xác định trước Gåm c¸c kÝ tù ® îc ph©n chia thµnh mét hoÆc nhiÒu dßng Dướiđây ta xét các khai báo và làm việc với tệp văn Lop11.com (4) Khai b¸o tÖp v¨n b¶n Var <Tªn biÕn tÖp> : TEXT; Program vd1; Uses crt; Var tep1,tep2: TEXT; VÝ dô: tep1,tep2 : Text; Lop11.com (5) Thao t¸c víi tÖp G¸n tªn tÖp Mở tệp để ghi Mở tệp để đọc §äc d÷ liÖu tõ tÖp Ghi d÷ liÖu tÖp §ãng tÖp Lop11.com (6) a G¸n tªn tÖp ASSIGN(<biÕn tÖp>,<tªn tÖp>); Tªn tÖp: Lµ biÕn x©u hoÆc h»ng x©u VÝ dô: ASSIGN(tep1, ‘DULIEU.DAT’); BiÕn tep1 ® îc g¾n víi tÖp cã tªn DULIEU.DAT ASSIGN(tep2, ‘D:\TP\BAITAP.INP’); BiÕn tep2 ® îc g¾n víi tÖp cã tªn BAITAP.INP thmôc TP ổ đĩa D Lop11.com (7) b Më tÖp Thủ tục mở tệp để ghi kết quả: REWRITE (<biÕn tÖp>); Program vd1; Uses crt; Var tep1,tep2: TEXT; BEGIN Clrscr; NÕu nhtrªn æ D:\TP chacã tÖp BAITAP.INP, th× tÖp sÏ ® ợc tạo rỗng Nếu đã có, thì nội dung cũ bị xoá để chuẩn bÞ ghi d÷ liÖu míi ASSIGN(tep2, ‘D:\TP\BAITAP.INP’); REWRITE (tep2); Lop11.com (8) c Ghi d÷ liÖu tÖp Program vd1; Uses crt; Var tep2: TEXT; a,b: integer; Thñ tôc ghi d÷ liÖu tÖp WRITE(<biÕn tÖp>, <Danh s¸ch kÕt qu¶>); WRITELN (<biÕn tÖp>, <Danh s¸ch kÕt qu¶>); BEGIN Clrscr; ASSIGN(tep2, ‘D:\TP\BAITAP.INP’); REWRITE (tep2); a:=3; b:=5; Danh s¸ch kÕt qu¶ gåm mét hay nhiÒu phÇn tö PhÇn tö cã thÓ lµ biÕn, h»ng x©u hoÆc biÓu thøc WRITE (tep2,a,’ ‘,b); Close(tep2); Readln; END Lop11.com (9) Gi¸ trÞ hai biÕn a=3, b=5 ® îc ghi ë tÖp BAITAP.INP Lop11.com (10) d §äc d÷ liÖu tõ tÖp Thủ tục mở tệp để đọc liệu RESET (<biÕn tÖp>); Thủ tục đọc liệu từ tệp: Program vd2; Uses crt; Var tep2: TEXT; x1,y1: integer; BEGIN Clrscr; ASSIGN(tep2, ‘D:\TP\BAITAP.INP’); READ(<biÕn tÖp>, <Danh s¸ch biÕn>); RESET (tep2); READLN (tep2,x1,y1); READLN (<biÕn tÖp>, <Danh s¸ch biÕn>); WRITE (‘Hai so la’ ,x1,y1); Danh s¸ch biÕn lµ mét nhiều biến đơn Close(tep2); Readln; END Lop11.com (11) e Thủ tục đóng tệp CLOSE(< tªn biÕn tÖp>) Ghi d÷ liÖu tÖp §äc d÷ liÖu tõ tÖp Program vd1; Uses crt; Var tep2: TEXT; a,b: integer; Program vd2; Uses crt; Var tep2: TEXT; x1,y1: integer; BEGIN Clrscr; BEGIN Clrscr; ASSIGN(tep2, ‘D:\TP\BAITAP.INP’); ASSIGN(tep2, ‘D:\TP\BAITAP.INP’); REWRITE (tep2); RESET (tep2); a:=3; b:=5; READLN(tep2, x1,y1); WRITE (tep2,a,b); WRITE (‘Hai so la’ ,x1,y1); Close(tep2); Readln; END Close(tep2); Readln; END Lop11.com (12) f Một số hàm chuẩn thườngdùng xử lí tệp văn EOF(<biÕn tÖp>); Cho giá trị đúng trỏ tới cuối tệp EOFLN(<biÕn tÖp>); Cho giá trị đúng trỏ tới cuối dòng Lop11.com (13) H·y nhí! Khai b¸o tÖp v¨n b¶n: Var < Tªn biÕn tÖp>: Text; G¸n tªn tÖp: ASSIGN(<tªn biÕn tÖp>); Më tÖp: - Để đọc: RESET(<Tên biến tệp>); - §Ó ghi: REWRITE(< Tªn biÕn tÖp>); §äc/ghi tÖp §äc: READ(<Tªn biÕn tÖp>, biÕn nhËn); Ghi: REWRITE(< Tªn biÕn tÖp>,biÕn ®ara); §ãng tÖp CLOSE(< tªn biÕn tÖp>); Lop11.com (14)