Bài giảng Lập trình cơ bản: Bài 8 - Chu Thị Hường
lượt xem 4
download
Bài giảng Lập trình cơ bản: Bài 8 Kiểu tập tin, cung cấp cho người đọc những kiến thức như: Biến và con trỏ tập tin; Các thao tác trên tập tin; Truy cập tập tin văn bản; Truy cập tập tin nhị phân;...Mời các bạn cùng tham khảo!
Bình luận(0) Đăng nhập để gửi bình luận!
Nội dung Text: Bài giảng Lập trình cơ bản: Bài 8 - Chu Thị Hường
- L P TRÌNH CƠ B N KI U T P TIN (FILE) Biên so n: Chu Th Hư ng – B môn HTTT – Khoa CNTT 1
- N I DUNG Gi i thi u Bi n và con tr t p tin Các thao tác trên t p tin Truy c p t p tin văn b n Truy c p t p tin nh phân Biên so n: Chu Th Hư ng – B môn HTTT – Khoa CNTT
- GI I THI U Ki u t p tin: D li u lưu tr thành m t file trên h th ng Các ki u t p tin: 3 ki u T p tin văn b n (Text File) T p tin nh ki u (Typed File) T p tin không nh ki u (Untyped File) Biên so n: Chu Th Hư ng – B môn HTTT – Khoa CNTT
- BI N VÀ CON TR T P TIN Bi n t p tin: là m t bi n thu c ki u d li u t p tin dùng i di n cho m t t p tin. Con tr t p tin: Khi m t t p tin ư c m ra làm vi c, t i m i th i i m, s có m t v trí c a t p tin mà t i ó vi c c/ghi thông tin s x y ra. Ngư i ta hình dung có m t con tr ang ch n v trí ó và t tên nó là con tr t p tin. Sau khi c/ghi xong d li u, con tr s chuy n d ch thêm m t ph n t v phía cu i t p tin. Sau ph n t d li u cu i cùng c a t p tin là d u k t thúc t p tin EOF (End Of File). Biên so n: Chu Th Hư ng – B môn HTTT – Khoa CNTT
- CÁC THAO TÁC TRÊN T P TIN x lý d li u c a t p óng t p 1 2 3 4 M t p tin Khai báo tin b ng tin b ng b ng hàm bi n t p tin các hàm hàm fopen() c/ghi d fclose() li u Biên so n: Chu Th Hư ng – B môn HTTT – Khoa CNTT
- CÁC THAO TÁC TRÊN T P TIN Khai báo bi n t p tin Cú pháp: FILE Ví d : FILE *f1,*f2; Biên so n: Chu Th Hư ng – B môn HTTT – Khoa CNTT
- CÁC THAO TÁC TRÊN T P TIN M t p tin Cú pháp: FILE *fopen(char *Path, const char *Mode) Path: chu i ch ư ng d n n t p tin trên ĩa. Type: chu i xác nh cách th c mà t p tin s m . Các giá tr có th c a Mode: Biên so n: Chu Th Hư ng – B môn HTTT – Khoa CNTT
- CÁC THAO TÁC TRÊN T P TIN M t p tin Mode Ý nghĩa r M t p tin văn b n c w T o ra t p tin văn b n m i ghi a N i vào t p tin văn b n rb M t p tin nh phân c wb T o ra t p tin nh phân ghi ab N i vào t p tin nh phân Biên so n: Chu Th Hư ng – B môn HTTT – Khoa CNTT
- CÁC THAO TÁC TRÊN T P TIN M t p tin Mode Ý nghĩa r+ M m t t p tin văn b n c/ghi w+ T o ra t p tin văn b n c ghi a+ N i vào hay t o m i t p tin văn b n c/ghi r+b M ra t p tin nh phân c/ghi w+b T o ra t p tin nh phân c/ghi a+b N i vào hay t o m i t p tin nh phân Biên so n: Chu Th Hư ng – B môn HTTT – Khoa CNTT
- CÁC THAO TÁC TRÊN T P TIN M t p tin Ví d : M t p tin ghi FILE *f; f = fopen(“TEST.txt”, “w”); if (f!=NULL) { /* Các câu l nh thao tác v i t p tin*/ /* óng t p tin*/ } Biên so n: Chu Th Hư ng – B môn HTTT – Khoa CNTT
- CÁC THAO TÁC TRÊN T P TIN óng t p tin Cú pháp: int fclose(FILE *f): =0 báo r ng vi c óng t p tin thành công =EOF n u có xu t hi n l i. int fcloseall(): =t ng s các t p tin ư c óng l i. = EOF N u không thành công. Biên so n: Chu Th Hư ng – B môn HTTT – Khoa CNTT
- CÁC THAO TÁC TRÊN T P TIN Ki m tra n cu i t p tin hay chưa? Cú pháp: int feof(FILE *f) = EOF n u cu i t p tin ư c ch m t i, =0 trong trư ng h p ngư c l i. Di chuy n con tr t p tin v u t p tin Cú pháp: void rewind(FILE *f) Biên so n: Chu Th Hư ng – B môn HTTT – Khoa CNTT
- TRUY C P T P TIN VĂN B N Ghi d li u lên t p tin văn b n: int putc(int c, FILE *f): Ghi m t ký t lên m t t p tin văn b n ang ư c m làm vi c. int fputs(const char *buffer, FILE *f) : ghi m t chu i ký t ch a trong vùng m lên t p tin văn b n. fprintf(FILE *f, const char *format, varexpr): ghi d li u có nh d ng lên t p tin văn b n. Biên so n: Chu Th Hư ng – B môn HTTT – Khoa CNTT
- TRUY C P T P TIN VĂN B N c d li u t t p tin văn b n: int getc(FILE *f): c d li u t t p tin văn b n ang ư c m làm vi c. char *fgets(char *buffer, int n, FILE *f): c m t chu i ký t t t p tin văn b n ang ư c m ra và liên k t v i con tr f cho n khi c n ký t ho c g p ký t xu ng dòng ‘\n’ hay g p ký t k t thúc EOF. fscanf(FILE *f, const char *format, varlist): c d li u t t p tin văn b n vào danh sách các bi n theo nh d ng. Biên so n: Chu Th Hư ng – B môn HTTT – Khoa CNTT
- TRUY C P T P TIN VĂN B N Ví d 1: Vi t chương trình ghi chu i ký t lên t p tin văn b n D:\\THIDU.txt #include #include int main() { FILE *f; f=fopen("D:\\thidu.txt","w+"); if (f!=NULL) { fputs("BAI THUC HANH.\n",f); fputs("Bai 1: Nhap cac so nguyen duong.",f); fclose(f); } getch(); return 0; } Biên so n: Chu Th Hư ng – B môn HTTT – Khoa CNTT
- TRUY C P T P TIN VĂN B N Ví d 2: Vi t chương trình ghi chu i ký t lên t p tin văn b n D:\\THIDU.txt #include #include int main() { FILE *f1,*f2; f1=fopen("D:\\THIDU.txt","rt"); f2=fopen("D:\\VIDU.txt","wt"); if (f1!=NULL && f2!=NULL) { int ch=fgetc(f1); while (! feof(f1)) { fputc(ch,f2); ch=fgetc(f1); }fcloseall(); } getch(); return 0;} Biên so n: Chu Th Hư ng – B môn HTTT – Khoa CNTT
- TRUY C P T P TIN NH PHÂN Ghi d li u lên t p tin nh phân - Hàm fwrite() : size_t fwrite(const void *ptr, size_t size, size_t n, FILE *f) ptr: con tr ch n vùng nh ch a thông tin c n ghi lên t p tin. n: s ph n t s ghi lên t p tin. size: kích thư c c a m i ph n t . f: con tr t p tin ã ư c m . Giá tr tr v c a hàm này là s ph n t ư c ghi lên t p tin. Giá tr này b ng n tr khi xu t hi n l i. Biên so n: Chu Th Hư ng – B môn HTTT – Khoa CNTT
- TRUY C P T P TIN NH PHÂN c d li u t t p tin nh phân - Hàm fread() : size_t fread(const void *ptr, size_t size, size_t n, FILE *f) ptr: con tr ch n vùng nh s nh n d li u t t p tin. n: s ph n t ư c c t t p tin. size: kích thư c c a m i ph n t . f: con tr t p tin ã ư c m . Giá tr tr v c a hàm này là s ph n t ã c ư c t t p tin. Giá tr này b ng n hay nh hơn n n u ã ch m n cu i t p tin ho c có l i xu t hi n.. Biên so n: Chu Th Hư ng – B môn HTTT – Khoa CNTT
- TRUY C P T P TIN NH PHÂN Di chuy n con tr t p tin - Hàm fseek(): int fseek(FILE *f, long offset, int whence) f: con tr t p tin ang thao tác. offset: s byte c n d ch chuy n con tr t p tin k t v trí trư c ó. Ph n t u tiên là v trí 0. whence: v trí b t u tính offset: 0 ( SEEK_SET): V trí u t p tin 1 (SEEK_CUR): V trí hi n t i c a con tr t p tin 2 (SEEK_END): V trí cu i t p tin K t qu tr v c a hàm là 0 n u vi c di chuy n thành công. N u không thành công, 1 giá tr khác 0 ( ó là 1 mã l i) ư c tr v . Biên so n: Chu Th Hư ng – B môn HTTT – Khoa CNTT
- BÀI T P TH C HÀNH Bài 1. Th c hi n biên so n và ch y th nghi m Ví d 1 và 2 trong bài. Bài 2: Th c hi n biên so n và ch y th nghi m chương trình sau: #include #include int a[10]; void GhiFile(int N) { FILE *f=fopen("D:\\Data.dat","wt"); for(int i=0;i
CÓ THỂ BẠN MUỐN DOWNLOAD
-
Bài giảng Lập trình cơ bản: Ngôn ngữ lập trình C
80 p | 70 | 17
-
Bài giảng Lập trình căn bản: Chương 1 - ThS. Nguyễn Cao Trí
20 p | 149 | 12
-
Bài giảng Lập trình cơ bản: Bài 5 - TS. Ngô Quốc Việt
39 p | 62 | 6
-
Bài giảng Lập trình cơ bản: Bài 2 - TS. Ngô Quốc Việt
49 p | 75 | 6
-
Bài giảng Lập trình cơ bản: Bài 3 - TS. Ngô Quốc Việt
37 p | 67 | 5
-
Bài giảng Lập trình cơ bản: Bài 4 - TS. Ngô Quốc Việt
38 p | 72 | 5
-
Bài giảng Lập trình cơ bản: Giới thiệu - TS. Ngô Quốc Việt
15 p | 98 | 5
-
Bài giảng Lập trình cơ bản: Bài 6 - TS. Ngô Quốc Việt
43 p | 78 | 5
-
Bài giảng Lập trình cơ bản: Bài 6 - Chu Thị Hường
38 p | 10 | 5
-
Bài giảng Lập trình cơ bản: Chương 4 - Giải thuật xử lý thông tin và ngôn ngữ lập trình
36 p | 103 | 5
-
Bài giảng Lập trình cơ bản: Bài 4 - Chu Thị Hường
46 p | 11 | 5
-
Bài giảng Lập trình cơ bản: Bài 5 - Chu Thị Hường
27 p | 13 | 4
-
Bài giảng Lập trình cơ bản: Bài 3 - Chu Thị Hường
34 p | 12 | 4
-
Tập bài giảng Lập trình cơ bản
208 p | 30 | 4
-
Bài giảng Lập trình cơ bản: Bài 7 - TS. Ngô Quốc Việt
16 p | 75 | 4
-
Bài giảng Lập trình cơ bản: Bài 1 - Chu Thị Hường
32 p | 7 | 3
-
Bài giảng Lập trình cơ bản: Bài 7 - Chu Thị Hường
25 p | 5 | 3
Chịu trách nhiệm nội dung:
Nguyễn Công Hà - Giám đốc Công ty TNHH TÀI LIỆU TRỰC TUYẾN VI NA
LIÊN HỆ
Địa chỉ: P402, 54A Nơ Trang Long, Phường 14, Q.Bình Thạnh, TP.HCM
Hotline: 093 303 0098
Email: support@tailieu.vn