Tải bản đầy đủ (.pdf) (13 trang)

Bài giảng Tin học 11 - Bài 17: Kiểu dữ liệu tệp và thao tác với tệp

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (548.06 KB, 13 trang )

<span class='text_page_counter'>(1)</span>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.

<span class='text_page_counter'>(2)</span> 1. Vai trß kiÓu tÖp D÷ liÖu kiÓu tÖp ®­ îc l­utr÷ l©u dµi ë bộ nhớ ngoài (đĩa từ, CD, ...) và kh«ng bÞ mÊt khi 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.

<span class='text_page_counter'>(3)</span> 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 chỉ xét các khai báo và làm việc với tệp văn bản.. Lop11.com.

<span class='text_page_counter'>(4)</span> 2. 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.

<span class='text_page_counter'>(5)</span> 3. 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 ra tÖp. §ãng tÖp. Lop11.com.

<span class='text_page_counter'>(6)</span> 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 trong th­môc TP ở ổ đĩa D. Lop11.com.

<span class='text_page_counter'>(7)</span> 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 nh­trªn æ D:\TP ch­acã 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.

<span class='text_page_counter'>(8)</span> c. Ghi d÷ liÖu ra tÖp Program vd1; Uses crt; Var tep2: TEXT; a,b: integer;. Thñ tôc ghi d÷ liÖu ra 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.

<span class='text_page_counter'>(9)</span> Gi¸ trÞ hai biÕn a=3, b=5 ®­ îc ghi ë trong tÖp BAITAP.INP.. Lop11.com.

<span class='text_page_counter'>(10)</span> d. §äc d÷ liÖu tõ tÖp Thủ tục mở tệp để đọc dữ liệu RESET (<biÕn tÖp>);. Thủ tục đọc dữ 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 do la’ ,x1,y1);  Danh s¸ch biÕn lµ mét hoặc nhiều biến đơn.. Close(tep2); Readln; END. Lop11.com.

<span class='text_page_counter'>(11)</span> e. Thủ tục đóng tệp. CLOSE(< tªn biÕn tÖp>). Ghi d÷ liÖu ra 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 do la’ ,x1,y1);. Close(tep2); Readln; END.. Close(tep2); Readln; END. Lop11.com.

<span class='text_page_counter'>(12)</span> f. Một số hàm chuẩn thườngdùng trong xử lí tệp văn bản. EOF(<biÕn tÖp>); Cho giá trị đúng nếu con trỏ đang chỉ tới cuối tệp. EOFLN(<biÕn tÖp>); Cho giá trị đúng nếu con trỏ đang chỉ tới cuối dòng.. Lop11.com.

<span class='text_page_counter'>(13)</span> 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.

<span class='text_page_counter'>(14)</span>

×