




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、.,1,第十二章文件,文件概念文件:是保存在外存儲(chǔ)器上的一組數(shù)據(jù)的有序集合。文件的特點(diǎn)是:(1)數(shù)據(jù)長(zhǎng)久保存(2)數(shù)據(jù)長(zhǎng)度不定(3)數(shù)據(jù)按順序存取語(yǔ)言中的文件完全是字節(jié)代碼的序列(字節(jié)流)可以看作為磁帶,.,2,第十二章文件,文件有兩種數(shù)據(jù)形式:ascii碼(文本文件textstream)a.c程序文件文本文件是字符流二進(jìn)制碼(二進(jìn)制文件binarystream)a.exe執(zhí)行文件二進(jìn)制文件是直接把內(nèi)存數(shù)據(jù)以二進(jìn)制形式保存。對(duì)于一個(gè)整型數(shù)1234:以文本文件保存,它是四個(gè)字符:ascii碼分別是:49505152;以二進(jìn)制文件保存,它是1234的二進(jìn)制數(shù)0 x04D2,.,3,由于磁盤速度相對(duì)
2、很低,直接把數(shù)據(jù)寫到磁盤會(huì)效率很低,文件,緩沖文件系統(tǒng):向磁盤輸出數(shù)據(jù):數(shù)據(jù)緩沖區(qū),裝滿緩沖區(qū)后磁盤文件。從磁盤讀入數(shù)據(jù):先一次性從磁盤文件將一批數(shù)據(jù)輸入到緩沖區(qū),然后再?gòu)木彌_區(qū)逐個(gè)讀入數(shù)據(jù)到變量。內(nèi)存單元內(nèi)存單元,數(shù)據(jù),緩沖器,512字節(jié),文件,由操作系統(tǒng)自動(dòng)完成,程序控制,文件名,用什么標(biāo)識(shí),.,4,文件,文件類型指針使用一個(gè)文件指針,來(lái)指示文件緩沖區(qū)中具體讀寫的位置。文件指針變量文件指針定義:FILE*fp;文件類型,數(shù)據(jù),緩沖器,512字節(jié),文件,由操作系統(tǒng)自動(dòng)完成,程序控制,文件名,fp,.,5,文件,文件類型指針文件指針定義:FILE*fp;文件類型文件指針變量語(yǔ)言中允許同時(shí)使用多
3、個(gè)文件,每個(gè)文件都有各自的緩沖區(qū),用不同的文件指針?lè)謩e指示。,問(wèn)題:如何使fp與具體文件掛鉤?,.,6,文件的打開,文件打開使文件指針與相應(yīng)文件實(shí)體對(duì)應(yīng)起來(lái)格式:fpfopen(“文件名”,“文件使用方式”)如:fp=fopen(a.dat,r)作用:1在磁盤中找到文件a.dat2在內(nèi)存中開辟512個(gè)字節(jié)的緩沖區(qū),并由fp指示文件緩沖區(qū)起始位置3把首塊512字節(jié)數(shù)據(jù):磁盤緩沖器,以后程序只對(duì)文件指針進(jìn)行操作,即用fp代表磁盤文件。,文件使用方式(ASCII碼文件):“r”僅從已建立的文件讀取數(shù)據(jù)“w”僅把數(shù)據(jù)寫到一個(gè)新建文件中“a”僅把數(shù)據(jù)寫到已建立的文件的尾部,.,7,文件基本讀寫,我們可以
4、這樣看:文件看作一個(gè)數(shù)組(緩沖器),文件指針看作是指向數(shù)組元素的指針,文件操作:對(duì)文件指針?biāo)傅木彌_器單元進(jìn)行存取.限制:文件的讀寫一般是順序進(jìn)行的,位置完全由文件指針控制,并且文件指針的改變也由系統(tǒng)控制。,.,8,文件基本讀寫,語(yǔ)言文件讀寫函數(shù)磁盤文件操作鍵盤操作chfgetc(fp)ch=getchar()fputc(ch,fp)putchar(ch)fscanf(fp,“格式”,輸入表)scanf()fprintf(fp,“格式”,輸出表)printf()它們的說(shuō)明在stdio.h中,.,9,文件基本讀寫,例:將一個(gè)已存在的文件a.dat的內(nèi)容拷貝到b.dat文件中。FILE*fpa,*
5、fpb;(1)定義文件指針charc;inti;:fpa=fopen(a.dat,r);fpb=fopen(b.dat,w);(2)打開文件并建立相應(yīng)指針c=fgetc(fpa);fputc(c,fpb);(3)文件讀寫c=fgetc(fpa);fputc(c,fpb);fscanf(fpa,%d,(4)關(guān)閉打開的所有文件,每一次讀/寫,文件指針自動(dòng)+,ab35,.,10,文件基本讀寫,文件程序FILE*fpa,*fpb;(1)定義文件指針fpa=fopen(a.dat,r);(2)打開文件并建立相應(yīng)指針c=fgetc(fpa);fputc(c,fpb);(3)文件讀寫fscanf(fpa,%
6、d,(4)關(guān)閉打開的所有文件,.,11,#includestdio.hmain()FILE*fpa,*fpb;if(fpa=fopen(d:tca.dat,r)=NULL)printf(cannotopenfilea.dat!);exit(0);if(fpb=fopen(d:tcb.dat,w)=NULL)printf(cannotopenfileb.dat!);exit(0);while(!feof(fpa)fputc(fgetc(fpa),fpb);if(fclose(fpa)printf(cannotclosefilea.dat!);exit(0);if(fclose(fpb)printf(cannotclosefileb.dat!);exit(0);,當(dāng)fpa指向文件末尾時(shí),feof(fpa)=非零,fclose(fp)0正常/1有錯(cuò),fp=NULL,表明文件不能正常打開,c=fgetc(fpa);while(c!=EOF)fputc(c,fpb);c=fgetc(fpa);,.,12,文件基本讀寫,例:統(tǒng)計(jì)文件的行數(shù)main()FILE*fp;intn=0;chatc;if(fp=fopen(d:tca.dat,r)=NULL)printf(cannotopenfilea.dat!);exit(0)
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 村民家庭農(nóng)場(chǎng)經(jīng)營(yíng)合作協(xié)議
- 數(shù)字社區(qū)居民物業(yè)服務(wù)合同
- 2025至2030建筑防腐行業(yè)市場(chǎng)深度研究與戰(zhàn)略咨詢分析報(bào)告
- 農(nóng)業(yè)廢棄物轉(zhuǎn)化為生物熱能技術(shù)鑒定報(bào)告(2025年)
- 2025搬家與倉(cāng)儲(chǔ)一體化服務(wù)合同
- 二零二五年度倉(cāng)儲(chǔ)信息化管理服務(wù)合同范本
- 二零二五年SPA館加盟管理合同范本
- 二零二五年度餐飲服務(wù)員專業(yè)培訓(xùn)勞動(dòng)合同范本
- 二零二五年度新能源汽車零部件銷售合同范本
- 2025版城市綜合體場(chǎng)地租賃管理合同
- 健身房消防管理制度
- 垃圾處理焚燒培訓(xùn)課件
- 國(guó)家中小學(xué)智慧教育平臺(tái)培訓(xùn)專題講座
- 2025江蘇省惠隆資產(chǎn)管理限公司招聘30人易考易錯(cuò)模擬試題(共500題)試卷后附參考答案
- 《農(nóng)村基層干部廉潔履行職責(zé)規(guī)定》解讀與培訓(xùn)
- 招標(biāo)代理服務(wù)服務(wù)方案
- 學(xué)術(shù)規(guī)范與論文寫作講述課件
- 普通生物學(xué)說(shuō)課(張艷麗)
- 意識(shí)障礙的分類課件
- 歐亨利介紹及其作品
- 鋁型材擠壓模具管理制度
評(píng)論
0/150
提交評(píng)論