Bài 15. Thao tác với tệp

9 224 0
Bài 15. Thao tác với tệp

Đang tải... (xem toàn văn)

Thông tin tài liệu

Bài 15. Thao tác với tệp tài liệu, giáo án, bài giảng , luận văn, luận án, đồ án, bài tập lớn về tất cả các lĩnh vực kin...

Mất điện rùi? Dữ liệu đang làm việccòn không? 1. Vai trò kiểu tệp Dữ liệu kiểu tệp được lưu trữ 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ượng thông tin lưu trữ trên tệp có thể rất lớn và chỉ phụ thuộc vào dung lượng đĩa. Có hai loại tệp thường dùng : Tệp có cấu trúc Tệp văn bản 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 Gồm các kí tự được phân chia thành một hoặc nhiều dòng. Phân loại tệp 2. Khai báo tệp văn bản Var < Tên biến tệp> : TEXT; Ví dụ: Var f : Text; Program vd1; Uses crt; Var f: TEXT; 3. Thao tác với tệp Ghi dữ liệu vào tệp Đọc dữ liệu từ tệp Gán tên tệp Mở tệp để ghi Mở tệp để đọc Ghi dữ liệu ra tệp Đọc dữ liệu từ tệp Đóng tệp Ghi dữ liệu vào tệp • Mở tệp để ghi dữ liệu • Đóng tệp • Gán tên tệp Write (<biến tệp>,<DS kquả>); Close(<biến tệp>); Rewrite (<biến tệp>); • Ghi dữ liệu ra tệp Assign(<biến tệp>,<tên tệp>); Assign(f, ‘DL.dat’); Rewrite (f); Write (f,hoten); Close(f); Ví dụ Program vd1; Uses crt; Var f: text; Hoten: string[20]; Begin Assign (f,’d:\danhsach.txt’); Rewrite (f); Hoten := ‘Nguyen Van A’; Writeln (f, hoten); close (f); Writeln (hoten); Readln End. Đọc dữ liệu từ tệp • Mở tệp để đọc dữ liệu • Đóng tệp • Gán tên tệp Readln (<biến tệp>,<DS kquả>); Reset (<biến tệp>); • Đọc dữ liệu từ tệp Reset (f); Readln (f,hoten); Ví dụ Assign(<biến tệp>,<tên tệp>); Assign(f, ‘DL.dat’); Close(<biến tệp>); Close(f); Program vd1; Uses crt; Var f: text; Hoten: string[20]; Begin Assign (f,’d:\danhsach.txt’); Reset (f); Readln (f, hoten); close (f); Writeln (hoten); Readln End. [...]...Sơ đồ thao tác với tệp Gán tên tệp Assign( , ); Mở tệp để ghi Rewite( ); Mở tệp để đọc Reset( ); Ghi dữ tệp> ,CHƯƠNG V: DỮ LIỆU KIỂU TỆP BÀI 14: KIỂU DỮ LIỆU TỆP BÀI 15 : THAO TÁC VỚI TỆP A Mục đích, yêu cầu − − − − − − − − Kiến thức: Biết khái niệm vai trò kiểu tệp Biết hai cách phân loại tệp: theo cách tổ chức liệu theo cách truy cập Hiểu chất tệp văn Biết bước làm việc với tệp: gán tên cho biến tệp, mở tệp, đọc/ghi tệp, đóng tệp Kỹ : Biết khai báo biến tệp thao tác làm việc với tệp văn Sử dụng số hàm thủ tục chuẩn làm việc với tệp Thái độ : Học sinh cần thấy cần thiết tiện lợi kiểu liệu tệp Giáo dục ý thức lưu trữ liệu phòng chống mát liệu B Phương pháp, phương tiện Phương pháp: - Thuyết trình, vấn đáp, thảo luận nhóm kết hợp hình ảnh trực quan - Sử dụng câu hỏi gợi mở, nêu giải vấn đề 2 Phương tiện: - Giáo viên: Sách giáo viên Tin học lớp 11, SGK Tin Học lớp 11, Giáo án Tin học 11, máy tính, máy chiếu - Học sinh: SGK Tin Học lớp 11, ghi, bút C Tiến trình lớp, nội dung giảng I Ổn định lớp (1’) - Ổn định lớp - Kiểm tra sĩ số II Gợi động (2’) Tất kiểu liệu mà biết học trước có chung đặc điểm, tồn nhớ (trong) Khi chương trình kết thúc tắt máy toàn liệu xử lý chương trình không Ngoài ra, nhớ cấp phát cho kiểu liệu ỏi Để khắc phục hai hạn chế trên, ngôn ngữ lập trình cung cấp liệu kiểu tệp cho phép lưu trữ liệu nhớ Trong học ta tìm hiểu cách khai báo biến tệp thao tác làm việc với tệp văn bản, sử dụng số hàm thủ tục chuẩn làm việc với tệp III Nội dung giảng Nội dung Hoạt động thầy trò Hoạt động 1: Giới thiệu kiểu liệu tệp (10’) Vai trò kiểu liệu tệp: • Khái niệm: GV: Để tìm hiểu vai trò phân loại kiểu liệu tệp cần biết đến Tệp dãy phần tử kiểu khái niệm kiểu liệu tệp xếp theo cách GV: Vậy em cho cô biết, tệp gì? HS: Trả lời câu hỏi, tập trung nghe giảng, ghi chép đầy đủ  Một số đặc điểm kiểu liệu tệp: - GV: Dữ liệu kiểu tệp có đặc điểm bật nào? Lưu trữ lâu dài nhớ (đĩa từ, HS: Chú ý nghe giảng trả lời câu hỏi CD,…) không bị ngắt nguồn - điện Lượng liệu lưu trữ tệp lớn phụ thuộc vào dung lượng đĩa Phân loại tệp - Xét theo tổ chức liệu: Tệp văn Ví dụ: Sách, giáo án, chương trình Tệp có cấu trúc Ví dụ: Hình ảnh, âm thanh, Xét theo cách thức truy cập: Tệp truy cập GV: Theo em có cách phân loại tệp loại gồm có loại tệp nào? HS: Đọc SGK trả lời câu hỏi GV: Thuyết trình cho học sinh hiểu tệp văn bản, tệp có cấu trúc, tệp truy cập tuần Ví dụ: Bài giáo án, chương trình tự tệp truy cập trực tiếp - pascal,… Tệp truy cập trực tiếp - Tệp văn tệp mà liệu ghi dạng kí tự, liệu dang - văn sách, tài liệu, giáo án,… Tệp có cấu trúc: tệp mà thành phần tổ chức theo cấu trúc - định Tệp truy cập tập văn có cách thực truy cập tuần tự, cho phép truy cập đến liệu tập cách qua tất - liệu trước Tệp truy cập trực tiếp tệp có cấu trúc có cách thức truy cập trực tiếp, cho phép tham chiếu đến vị trí cần tìm cách trực tiếp HS: Nghe giảng chép đầy đủ Hoạt động 2: Các thao tác với tệp (30’) Khai báo Khai báo biến tệp văn có dạng: Var : text; Ví dụ: Var tep1, tep2 : text; GV: Để làm việc với liệu kiểu tệp ta phải sử dụng biến tệp - Tên biến tệp tên quy định phải theo quy cách đặt tên (tức tên không chứa dấu cách, không chứa kí tự đặc biệt.) Sau khai báo tên biến tệp ta sử dụng thao tác với tệp như: Gắn tên cho biến tệp, mở, đọc, ghi đóng tệp HS: Nghe giảng chép đầy đủ GV: Tên tệp xâu kí tự giá Thao tác với tệp 2.1 Gắn tên cho biến tệp Ý nghĩa: Là tạo tham chiếu tệp đĩa biến tệp chương trình Cú pháp: trị biểu thức kiểu xâu kí tự Tất phép toán biến tệp tác động tới tệp tên tệp Sau gọi thủ tục assign khác thực biến tệp này, biến tệp chuyển sang gắn kết với tệp khác Tên tệp gồm đường dẫn chứa ổ đĩa, danh sách thư mục liên Assign (,); VD : Assign(tep1,‘DULIEU.DAT’); Assign(tep1,‘C:\INP.DAT’); tiếp cách dấu đường dẫn, cuối tên tệp :\\ \ GV: Để xem nội dung sách, việc em làm gì? HS: Suy nghĩ trả lời câu hỏi GV: Vậy thực mở tệp ta mở sách phải lưu ý sử dụng thủ tục Cần mở để đọc hay mở để ghi Trước hết tìm hiểu mở tệp để đọc 2.2 Mở tệp đọc liệu Cú pháp: Mở tệp để đọc: Reset (); VD: GV: Nhấn mạnh từ khóa Reset, read, readln Read Readln giống thực việc nhập liệu từ bàn phím Yêu cầu học sinh đưa ví dụ Assign (ten2, ‘DL.INP’); reset (ten2); Thủ tục đọc tệp văn dung muốn đọc liệu bên tệp Câu lệnh thủ tục đọc có dạng: read(, ); readln(, ); VD: Thủ tục đọc: Read(tep2, A, B, C); Readln(tep2, A, B, C); 2.3 Mở tệp ghi liệu GV: Tương tự thao tác mở tệp để ghi liệu Nhấn mạnh từ khóa Cú pháp: Mở tệp để để ghi liệu: Rewrite (); VD: Rewrite, write, writeln Write Writeln thay hình hiển thị danh sách kết quả, liệu ghi vào tệp Yêu cầu học sinh đưa ví dụ Assign (ten2, ‘DL.INP’); rewrite (ten2); Thủ tục ghi tệp văn dùng để ghi liệu vào tệp văn Câu lệnh thủ tục ghi có dạng: Write(, ); Writeln(, ); VD: Thủ tục ghi: Write(tep1, ‘a= ‘,a, ‘b= ‘,b, ‘c= ‘,c); Writeln(tep1, ‘a= ‘,a, ‘b= ‘,b, ‘c= ‘,c);  Một số hàm chuẩn thường dùng: Các hàm giúp dễ dàng xử lý tập tệp - Hàm eof( ): trả về giá trị TRUE khi con trỏ tệp đã ở vị trí cuối dòng II Thao tác với tệp 4 Đóng tệp văn bản Sau khi làm việc xong với tệp ta phải làm gì? Tại sao ta phải đóng tệp? Sau khi làm việc xong với tệp cần phải đóng tệp. .. có đóng tệp thì khi đó hệ thống mới thực sự hoàn tất ghi dữ liệu ra tệp II Thao tác với tệp 4 Đóng tệp văn bản Câu lệnh dùng thủ tục đóng tệp: Close ( ); Vd: Close (tepA); Close (tepB); 1 Cấu trúc khai báo tệp? 2 Các thao tác với tệp? var : text; Củng cố Câu lệnh dùng mở tệp để ghi? Câu 1: a rewrite( , ); b reset ( , ); c rewite( );... tệp Phân biệt tên tệp với biến tệp: - Mỗi tệp có một cái tên, tên tệp là biến xâu hay hằng xâu +Ví dụ 1: assign(tep1,‘DULIEU.DAT’); +Ví dụ 2: tentep=’DL.INP’; assign(tep1, tentep); +Ví dụ 3: assign(tep1, ‘C:\\DIEM.TXT’); - Biến tệp là biến sử dụng để tham chiếu tới các phần tử của tệp II Giáo án giảng dạy GIÁO ÁN TIN HỌC 11 CHƯƠNG 5: TỆPTHAO TÁC VỚI TỆP Bài 15 . THAO TÁC VỚI TỆP I. MỤC TIÊU BÀI HỌC. 1. Kiến thức. - Biết khai báo biến tệp văn bản. - Biết các bước làm việc với tệp: Gắn tên cho biến tệp, mở tệp, đọc/ghi tệp, đóng tệp. - Biết khai báo biến tệp và các thao tác cơ bản với tệp văn bản. - Biết sử dụng một số hàm và thủ tục chuẩn làm việc với tệp. 2. Kỹ năng. - Khai báo đúng tệp văn bản. - Có thể tạo chương trình đọc dữ liệu từ một tệp hoặc lưu trữ dữ liệu dưới dạng tệp văn bản. II. PHƯƠNG TIỆN DẠY HỌC 1. Chuẩn bị của giáo viên - Máy vi tính, máy chiếu projector để giới thiệu ví dụ. 2. Chuẩn bị của học sinh - Sách giáo khoa. GSTT: Nguyễn Thị Mỹ Phúc Trang 1 Giáo án giảng dạy III.PHƯƠNG PHÁP GIẢNG DẠY. - Phương pháp đàm thoại. - Phương pháp diễn giải – nếu vấn đề. - Phương pháp diễn giảng. IV. HOẠT ĐỘNG DẠY-HỌC a. ỔN ĐỊNH LỚP. b. KIỂM TRA BÀI CŨ: Câu 1: Cấu trúc khai báo kiểu bản ghi, biến kiểu bản ghi? Trả lời: Các thông tin cần khái báo gồm: tên kiểu bản ghi, tên các thuộc tính, kiểu dữ liệu của mỗi thuộc tính. Type <tên kiểu bản ghi> = record <tên trường 1> : <kiểu trường 1>; ……………………………………… <tên trường k> : <kiểu trường k>; End; var <tên biến bản ghi> : <tên kiểu bản ghi>; Câu 2: Có mấy cách gán giá trị cho kiểu bản ghi? Trả lời: Có 2 cách: - Dùng lệnh gán trực tiếp: A:=B. - Gán giá trị cho từng trường: Có thể thực hiện bằng lệnh gán hoặc nhập từ bàn phím. GSTT: Nguyễn Thị Mỹ Phúc Trang 2 Giáo án giảng dạy - c. TỔ CHỨC HOẠT ĐỘNG DẠY VÀ HỌC. Hoạt động của giáo viên và học sinh Nội dung HĐ1: Dẫn dắt vào bài học - GV: Giới thiệu nội dung tổng quát của bài học - Đặt vấn đề: Trước khi vào phần chính của bài học hôm nay cô có một số câu hỏi dành cho các em. - Dẫn dắt : “ Trong chương trình Pascal khi chúng ta muốn dùng một biến để chứa dữ liệu, thì việc đầu tiên chúng ta sẽ làm là gì, để có thể sử dụng được biến đó???” - HS trả lời: Khai báo biến - GV: Khai báo như thế nào? - HS trả lời: Trong Pascal mọi biến đều phải được đặt tên và khai báo kiểu dữ liệu của nó. Trong Pascal , khai báo biến bắt đầu bằng từ khóa Var và có dạng: Var <danh sách biến>:<Kiểu dữ liệu>; HĐ 2: Khai báo biến tệp văn bản. - GV đặt vấn đề: Tại sao phải sử dụng biến tệp? - HS trả lời: Dữ liệu không bị mất khi tắt điện và dữ liệu được lưu trữ trên tệp có dung lượng lớn. - GV: Với cách khai báo tương tự như 1. Khai báo biến tệp văn bản - 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. Các phần tử của tệp không có tên và việc truy nhập không thể tùy tiện được. Vì vậy để làm việc với dữ liệu kiểu tệp ta phải sử dụng biến tệp. GSTT: Nguyễn Thị Mỹ Phúc Trang 3 Giáo án giảng dạy khai báo kiểu dữ liệu trong Pascal em nào có thể đưa ra cách khai báo biến tệp? - HS trả lời: var <tên biến tệp> : text; - GV: Quy cách khai báo tệp như thế nào? - HS trả lời: Tên biến tệp phải tuân theo đúng quy cách đặt tên (trong tên biến không có khoảng trắng, , ., !, #, $, %, &, @) - Trong các kiểu khai báo dưới đây thì cách nào đúng, cách nào sai? Vì sao? Ví dụ 1: var tep vb : text; Ví dụ 2: var tep1,tep2 : text. - GV: Yêu cầu học sinh cho ví dụ cụ thể dựa vào cấu trúc khai báo về tệp văn bản - HS trả lời - GV: Phân biệt tên tệp với biến tệp? - HS trả lời: Mỗi tệp có một cái tên, tên tệp là biến xâu hay hằng xâu. - Chuyển sang đề mục tiếp theo: Chúng ta đã biết cách khai báo biến tệp. Sau đây LOGO Trong máy tính có những loại bộ nhớ nào ? Loại bộ nhớ nào không bị mất dữ liệu khi tắt máy hoặc mất điện ? [...]... Các thao tác với tệp đối với ngừơi lập trình:     Khai báo biến tệp; Mở Tệp; Đọc/Ghi dữ liệu; Đóng tệp LOGO Var : Text ; Ví dụ: Var tep1,tep2:text; Program vd1; Uses crt; Var tep1,tep2: TEXT; a Gắn tên tệp Assign ( , ) ; VD : Assign (tep1,’DULIEU.DAT’); Assign (tep2,’D:\TP\BAITAP.INP’); b Mở tệp Mở tệp để ghi dữ liệu : Rewrite( ); Mở tệp để... biến tệp> ); c Đọc/Ghi tệp văn bản Đọc dữ liệu từ tệp : Read( ,); Readln( ,); Ghi dữ liệu vào tệp : Write( ,); Writeln( ,GIÁO VIÊN: Nguyễn Thị Hồng Cẩm Châu Cẩm Tú Bài 15: THAO TÁC VỚI TỆP TRƯỜNG THPT NGUYỄN TRUNG TRỰC Kiểm tra bài cũ Câu 1: Xét theo cách tổ chức dữ liệu thì tệp có mấy loại? đó là những loại nào? Câu 2: Dữ liệu kiểu tệp được lưu ở đâu? Kiểm tra bài cũ Xét theo cách tổ chứ dữ liệu thì tệp được phân làm 2 loại: tệp văn bản và tệp có cấu trúc. Kiểu dữ liệu tệp được lưu trữ lâu dài ở bộ nhớ ngoài (đĩa CD, đĩa từ…). 1.Khai báo tệp 2.Thao tác với tệp NỘI DUNG I. Khai báo tệp Trong chương trình Pascal khi chúng ta muốn dùng một biến để chứa dữ liệu, thì việc đầu tiên chúng ta sẽ làm gì? Khai báo biến I. Khai báo tệp Tại sao phải sử dụng tệp tin? Dữ liệu không bị mất khi tắt điện và dữ liệu được lưu trữ trên tệp có dung lượng lớn. I. Khai báo tệp Khai báo biến như thế nào? Var <danh sách biến>:<Kiểu dữ liệu>; I. Khai báo tệp Vậy khai báo biến tệp như thế nào? var <tên biến tệp> : text; Chú ý: -Tên biến tệp: Không được bắt đầu bằng số, trong tên biến không có khoảng trắng, không chứa các kí tự đặc biệt… , , ., !, #, $, %, &, @) I. Khai báo tệp var tep vb : text; var tep1,tep2 : text. Đúng Sai Khai báo nào đúng? II. Thao tác với tệp 1. Gán tên tệp 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. Gắn tên tệp với biến tệp thực chất là tạo một tham chiếu giữa tệp trên đĩa và biến tệp trong chương tình, làm cho biến tệp trở thành đại diện cho tệp. ... tên biến tệp ta sử dụng thao tác với tệp như: Gắn tên cho biến tệp, mở, đọc, ghi đóng tệp HS: Nghe giảng chép đầy đủ GV: Tên tệp xâu kí tự giá Thao tác với tệp 2.1 Gắn tên cho biến tệp Ý nghĩa:... tên thao tác cuối đóng tệp Mặt khác thực ghi liệu hoàn tất thao tác đóng tệp hoàn tất thao tác ghi liệu vào tệp tệp… IV Củng cố (2’) − Nhắc lại kiến thức học học + Vai trò kiểu tệp + Phân loại tệp. .. đi, không làm mở nhiều Hoàn tất thao tác với tệp sách nhiều bàn em chật kín với máy tính, em Cú pháp: thực xong thao tác với tệp thực Close( ); Khi mở lại tệp, biến cũ không cần phải dùng

Ngày đăng: 30/09/2017, 02:57