Bài giảng Lập trình căn bản - Chương 10: Kiểu tập tin
Số trang: 28
Loại file: ppt
Dung lượng: 1.05 MB
Lượt xem: 10
Lượt tải: 0
Xem trước 3 trang đầu tiên của tài liệu này:
Thông tin tài liệu:
Chương 10 giới thiệu về kiểu tập tin trong C. Trong chương này gồm có các nội dung chính như: Một số khái niệm về 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 tham khảo.
Nội dung trích xuất từ tài liệu:
Bài giảng Lập trình căn bản - Chương 10: Kiểu tập tinLẬP TRÌNH CĂN BẢN Phần 2 - Chương 10 KIỂU TẬP TIN N.C. Danh 1Nộidungchươngnày Mộtsốkháiniệmvềtậptin Cácthaotáctrêntậptin Truycậptậptinvănbản Truycậptậptinnhịphân 2Mộtsốkháiniệmvềtậptin(file)(1) Tạisaotacầnđếnkiểutậptin? Chophéplưutrữdữliệuởbộnhớngoài(đĩa). Khikếtthúcchươngtrìnhthìdữliệuvẫncòndo đóchúngtacóthểsửdụngnhiềulần. Kíchthướclớndữliệukhônghạnchế. 3Mộtsốkháiniệmvềtậptin(file)(2) Có3loạidữliệukiểutậptin: Tậptinvănbản(TextFile) Dùngđểghicáckýtựlênđĩa(dướidạngmãAscii) Cóchứa: Kýhiệu‘\n’:xuốngdòng KítựEOF(EndOfFile)cómãAsciilà26:nằmởcuốitậptin Tậptinđịnhkiểu(TypedFile) Gồmnhiềuphầntửcócùngkiểu:char,int,long,struct… Đượclưutrữtrênđĩadướidạngmộtchuỗicácbyteliêntục. Tậptinkhôngđịnhkiểu(UntypedFile) Gồmcáccấutrúcdữliệumàtakhôngquantâmđếnnộidung hoặckiểucủanó. Tachỉlưuýđếncácyếutốvậtlýcủatậptinnhưđộlớn,... 4Mộtsốkháiniệmvềtậptin(file)(3) Biếntậptin Đượcdùngđểđạidiệnchomộttậptin Cácthaotáclêntậptinsẽđượcthựchiệnthôngquabiếnnày Contrỏtậptin Tạimỗithờiđiểm,sẽcómộtvịtrícủatậptinmàtạiđóviệc đọc/ghithôngtinsẽxảyra Tahìnhdungcó1contrỏđangchỉđếnvịtríđó Saukhiđọc/ghixongdữliệu,contrỏsẽchuyểndịchthêmmột phầntửvềphíacuốitậptin. Sauphầntửdữliệucuốicùngcủatậptinlàdấukếtthúctập tinEOF 5Cácthaotáctrêntậptin Khaibáobiếntậptin Mởtậptin Đóngtậptin Kiểmtrađếncuốitậptinhaychưa? DichuyểncontrỏtậptinvềđầutậptinHàm rewind() 6Khaibáobiếntậptin Cú pháp: FILE; Cácbiếntrongdanhsáchphảilàcáccontrỏvà đượcphâncáchbởidấuphẩy(,). Vídụ: FILE*f1,*f2; 7Mởtậptin(1) Cú pháp: FILE *fopen(char *Path, const char *Mode)Ý nghĩa: Trả về con trỏ tập tin của tập tin được mở Trả về NULL nếu có lỗi 8Mởtậptin(2) Path:chuỗichỉđườngdẫnđếntậptintrênđĩa Type:chuỗixácđịnhcáchthứcmàtậptinsẽmở.Cácgiátrị cóthểcủaMode: 9Mởtậptin(3) Vídụ:MởmộttậptintênTEST.txtđểghi. FILE*f; f=fopen(“TEST.txt”,“w”); if(f!=NULL){ //Cáccâulệnhđểthaotácvớitậptin //Đóngtậptin } => mởtậptinđểghi => nếutậptinđãtồntạirồithìtậptinsẽbịxóavà một tậptinmớiđượctạora 10Đóngtậptin Cú pháp: int fclose(FILE *f) Ghidữliệucònlạitrongvùngđệmvàotậptinvàđónglạitập tin flàcontrỏtậptinđượcmởbởihàmfopen() Giátrịtrảvềlà0báorằngviệcđóngtậptinthànhcông GiátrịtrảvềlàEOFnếucóxuấthiệnlỗi Cú pháp: int fcloseall() Đóngtấtcảcáctậptinlại Trảvềtổngsốcáctậptinđượcđónglại Nếukhôngthànhcông,kếtquảtrảvềlàEOF 11Kiểmtrađếncuốitậptinhaychưa? Cúpháp: intfeof(FILE*f) Ýnghĩa: Kiểmtraxemđãchạmtớicuốitậptinhaychưa. TrảvềEOFnếucuốitậptinđượcchạmtới,ngược lạitrảvề0. 12DichuyểncontrỏtậptinvềđầutậptinHàmrewind() Cúpháp: voidrewind(FILE*f) Ýnghĩa: Làmchocontrỏquayvềđầutậptinnhưkhimởnó 13Truycậptậptinvănbản Ghidữliệulêntậptinvănbản Đọcdữliệutừtậptinvănbản 14Ghidữliệulêntậptinvănbản(1) Hàm putc() int putc(int c, FILE *f) Đượcdùngđểghimộtkýtựlênmộttậptinvănbản đangđượcmở(liênkếtvớicontrỏf)đểlàmviệc cchứamãAsciicủakýtự HàmnàytrảvềEOFnếugặplỗi 15Ghidữliệulêntậptinvănbản(2) Hàm fputs() int fputs(const char *buffer, FILE *f) Đượcdùngđểghimộtchuỗikýtựchứatrongvùng đệmlêntậptinvănbản Hàmnàytrảvềgiátrị0nếubufferchứachuỗirỗng vàtrảvềEOFnếugặplỗi 16Ghidữliệulêntậptinvănbản(3) Vídụ:Viếtchươngtrìnhghichuỗikýtựlêntậptinvănbản D:\\Baihat.txt 17Ghidữliệulêntậptinvănbản(3) Hàmfprintf() fprintf(FILE*f,constchar*format,varexpr) Đượcdùngđểghidữliệucóđịnhdạnglêntậptinvăn bản. format:chuỗiđịnhdạng(giốngvớicácđịnhdạngcủa hàmprintf()) varexpr:danhsáchcácbiểuthức,mỗibiểuthứccáchnhau dấuphẩy(,) 18Đọcdữliệutừtậptinvănbản(1) Hàmgetc() intgetc(FILE*f) Đượcdùngđểđọcdữliệutừtậptinvănbảnđangđược mởđểlàmviệc(liênkếtvớif) HàmnàytrảvềmãAsciicủamộtkýt ...
Nội dung trích xuất từ tài liệu:
Bài giảng Lập trình căn bản - Chương 10: Kiểu tập tinLẬP TRÌNH CĂN BẢN Phần 2 - Chương 10 KIỂU TẬP TIN N.C. Danh 1Nộidungchươngnày Mộtsốkháiniệmvềtậptin Cácthaotáctrêntậptin Truycậptậptinvănbản Truycậptậptinnhịphân 2Mộtsốkháiniệmvềtậptin(file)(1) Tạisaotacầnđếnkiểutậptin? Chophéplưutrữdữliệuởbộnhớngoài(đĩa). Khikếtthúcchươngtrìnhthìdữliệuvẫncòndo đóchúngtacóthểsửdụngnhiềulần. Kíchthướclớndữliệukhônghạnchế. 3Mộtsốkháiniệmvềtậptin(file)(2) Có3loạidữliệukiểutậptin: Tậptinvănbản(TextFile) Dùngđểghicáckýtựlênđĩa(dướidạngmãAscii) Cóchứa: Kýhiệu‘\n’:xuốngdòng KítựEOF(EndOfFile)cómãAsciilà26:nằmởcuốitậptin Tậptinđịnhkiểu(TypedFile) Gồmnhiềuphầntửcócùngkiểu:char,int,long,struct… Đượclưutrữtrênđĩadướidạngmộtchuỗicácbyteliêntục. Tậptinkhôngđịnhkiểu(UntypedFile) Gồmcáccấutrúcdữliệumàtakhôngquantâmđếnnộidung hoặckiểucủanó. Tachỉlưuýđếncácyếutốvậtlýcủatậptinnhưđộlớn,... 4Mộtsốkháiniệmvềtậptin(file)(3) Biếntậptin Đượcdùngđểđạidiệnchomộttậptin Cácthaotáclêntậptinsẽđượcthựchiệnthôngquabiếnnày Contrỏtậptin Tạimỗithờiđiểm,sẽcómộtvịtrícủatậptinmàtạiđóviệc đọc/ghithôngtinsẽxảyra Tahìnhdungcó1contrỏđangchỉđếnvịtríđó Saukhiđọc/ghixongdữliệu,contrỏsẽchuyểndịchthêmmột phầntửvềphíacuốitậptin. Sauphầntửdữliệucuốicùngcủatậptinlàdấukếtthúctập tinEOF 5Cácthaotáctrêntậptin Khaibáobiếntậptin Mởtậptin Đóngtậptin Kiểmtrađếncuốitậptinhaychưa? DichuyểncontrỏtậptinvềđầutậptinHàm rewind() 6Khaibáobiếntậptin Cú pháp: FILE; Cácbiếntrongdanhsáchphảilàcáccontrỏvà đượcphâncáchbởidấuphẩy(,). Vídụ: FILE*f1,*f2; 7Mởtậptin(1) Cú pháp: FILE *fopen(char *Path, const char *Mode)Ý nghĩa: Trả về con trỏ tập tin của tập tin được mở Trả về NULL nếu có lỗi 8Mởtậptin(2) Path:chuỗichỉđườngdẫnđếntậptintrênđĩa Type:chuỗixácđịnhcáchthứcmàtậptinsẽmở.Cácgiátrị cóthểcủaMode: 9Mởtậptin(3) Vídụ:MởmộttậptintênTEST.txtđểghi. FILE*f; f=fopen(“TEST.txt”,“w”); if(f!=NULL){ //Cáccâulệnhđểthaotácvớitậptin //Đóngtậptin } => mởtậptinđểghi => nếutậptinđãtồntạirồithìtậptinsẽbịxóavà một tậptinmớiđượctạora 10Đóngtậptin Cú pháp: int fclose(FILE *f) Ghidữliệucònlạitrongvùngđệmvàotậptinvàđónglạitập tin flàcontrỏtậptinđượcmởbởihàmfopen() Giátrịtrảvềlà0báorằngviệcđóngtậptinthànhcông GiátrịtrảvềlàEOFnếucóxuấthiệnlỗi Cú pháp: int fcloseall() Đóngtấtcảcáctậptinlại Trảvềtổngsốcáctậptinđượcđónglại Nếukhôngthànhcông,kếtquảtrảvềlàEOF 11Kiểmtrađếncuốitậptinhaychưa? Cúpháp: intfeof(FILE*f) Ýnghĩa: Kiểmtraxemđãchạmtớicuốitậptinhaychưa. TrảvềEOFnếucuốitậptinđượcchạmtới,ngược lạitrảvề0. 12DichuyểncontrỏtậptinvềđầutậptinHàmrewind() Cúpháp: voidrewind(FILE*f) Ýnghĩa: Làmchocontrỏquayvềđầutậptinnhưkhimởnó 13Truycậptậptinvănbản Ghidữliệulêntậptinvănbản Đọcdữliệutừtậptinvănbản 14Ghidữliệulêntậptinvănbản(1) Hàm putc() int putc(int c, FILE *f) Đượcdùngđểghimộtkýtựlênmộttậptinvănbản đangđượcmở(liênkếtvớicontrỏf)đểlàmviệc cchứamãAsciicủakýtự HàmnàytrảvềEOFnếugặplỗi 15Ghidữliệulêntậptinvănbản(2) Hàm fputs() int fputs(const char *buffer, FILE *f) Đượcdùngđểghimộtchuỗikýtựchứatrongvùng đệmlêntậptinvănbản Hàmnàytrảvềgiátrị0nếubufferchứachuỗirỗng vàtrảvềEOFnếugặplỗi 16Ghidữliệulêntậptinvănbản(3) Vídụ:Viếtchươngtrìnhghichuỗikýtựlêntậptinvănbản D:\\Baihat.txt 17Ghidữliệulêntậptinvănbản(3) Hàmfprintf() fprintf(FILE*f,constchar*format,varexpr) Đượcdùngđểghidữliệucóđịnhdạnglêntậptinvăn bản. format:chuỗiđịnhdạng(giốngvớicácđịnhdạngcủa hàmprintf()) varexpr:danhsáchcácbiểuthức,mỗibiểuthứccáchnhau dấuphẩy(,) 18Đọcdữliệutừtậptinvănbản(1) Hàmgetc() intgetc(FILE*f) Đượcdùngđểđọcdữliệutừtậptinvănbảnđangđược mởđểlàmviệc(liênkếtvớif) HàmnàytrảvềmãAsciicủamộtkýt ...
Tìm kiếm theo từ khóa liên quan:
Lập trình căn bản Bài giảng Lập trình căn bản Ngôn ngữ C Lập trình C Kiểu tập tin Truy cập tập tin văn bảnGợi ý tài liệu liên quan:
-
114 trang 216 2 0
-
80 trang 191 0 0
-
Hướng dẫn thực hành lập trình C trên Visual Studio
9 trang 123 0 0 -
Giáo trình Kỹ thuật lập trình C: Căn bản & nâng cao - Phần 1
202 trang 114 0 0 -
Giáo trình Lập trình C căn bản - HanoiAptech Computer Education Center
136 trang 112 0 0 -
Giáo trình Ngôn ngữ lập trình C căn bản
142 trang 95 0 0 -
124 trang 92 3 0
-
Giáo trình Tin học đại cương: Phần 2 - Trần Đình Khang
118 trang 88 0 0 -
Program C Ansi Programming Embedded Systems in C and C++ phần 4
12 trang 83 0 0 -
91 trang 81 0 0