版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
第11單元文件讀寫技術Contents目錄文件的打開與關閉一字符的讀寫二數據塊的讀寫四三字符串的讀寫文件定位四三格式化讀寫引
文件是指駐留在外部介質(如磁盤)上的一組相關數據的有序集合。這個數據集有一個名稱,叫做文件名。
識認
文
件
文件概念
件
文
分
類
源文件、目標文件、數據文件等。按文件的內容卡片文件、紙帶文件、磁帶文件、磁盤文件等。按文件依附的介質
字符文件和二進制文件。按數據的組織形式
文件概念引引
一個指針變量指向一個文件,這個指針稱為文件指針。
文件進行的各種操作就是通過文件指針完成的。文件指針的一般格式:FILE*指針變量標識符;
件
文
指
針
文件概念注意:FILE應該為大寫一文件的打開與關閉PART文件的打開與關閉一
件文
打
開的
打開文件的一般形式:
文件指針=fopen(文件名,文件使用方式);指被打開的文件
文件的類型和操作要求文件的打開與關閉一
件文
打
開的
例如:FILE*f1;f1=(“file1.txt”,“r”);【功能】在當前目錄下打開文件file1,只允許進行“讀”操作,并使f1指向該文件。文件的打開與關閉一
件文
用
方使
式
文件使用方式符號含義r打開一個只讀的文本文件w打開或創(chuàng)建一個新的只寫的文本文件a打開一個文本文件在尾部追加rb打開一個只讀的二進制文件wb打開或創(chuàng)建一個新的只寫的二進制文件ab對二進制文件追加r+打開一個可讀/寫的文本文件w+打開或創(chuàng)建一個新的可讀/寫的文本文件a+打開一個可讀/寫的文本文件rb+打開一個可讀/寫的二進制文件wb+打開或創(chuàng)建一個新的可讀/寫的二進制文件ab+打開一個可讀/寫的二進制文件文件的打開與關閉一
注
事
項意
打開文件的幾點注意事項:在打開一個文件時,如果出錯,fopen將返回一個空指針值NULL。文件的打開與關閉一
注
事
項意
打開文件的幾點注意事項:用“r”打開一個文件時,該文件必須已經存在,且只能對該文件讀。用“w”打開的文件只能向該文件寫入。文件的打開與關閉一
注
事
項意
打開文件的幾點注意事項:若要向一個已存在的文件追加新的信息,只能用“a”方式打開文件。但此時該文件必須是存在的,否則將會出錯。文件的打開與關閉一
注
事
項意
打開文件的幾點注意事項:把一個文本文件讀入內存時,要將ASCII碼轉換成二進制碼,而把文件以文本方式寫入磁盤時,也要把ASCII碼轉換成二進制碼,因此文本文件的讀寫要花費較多的轉換時間。對二進制文件的讀寫不存在這種轉換。文件的打開與關閉一
件文
關
閉的
關閉文件的一般形式:fclose(文件指針變量);
【功能】關閉指針所指的文件,同時自動釋放分配給文件的內存緩沖區(qū)。
二字符的讀寫PART字符的讀寫二四
函種數
字符讀寫函數:fgetc和fputc數據塊讀寫函數:fread和fwrite字符串讀寫函數:fgets和fputs格式化讀寫函數:fscanf和fprintf
文件的順序讀寫包括以下4種函數:字符的讀寫二四
函種數
字符讀取函數fgetc格式:fgetc(文件指針fp);功能:從文件指針fp所指的文件的當前位
置讀取單個字符。字符的讀寫三四
函種數
【例11-1】讀取文件f1.txt,在屏幕上輸出。程序分析文件指針fp,以讀文本文件方式打開文件f1.txt,并使fp指向該文件。用其控制文件的輸出。字符的讀寫三四
函種數
字符寫入函數fputc格式:fputc(字符量ch,文件指針fp);功能:將ch表示的字符寫入fp所指向的文
件的當前位置。字符的讀寫三四
函種數
輸入一行字符,將它存入文件,再讀
取文件內容并顯示出來。程序分析程序中首先以讀寫文本文件方式打開文件input.txt。在提示輸入一串字符串后,從鍵盤讀入一個字符串后進入循環(huán),當讀入字符不為回車符時,文件內的位置指針會向后移動一個字節(jié),寫入完畢,指針已指向文件末尾。三字符串的讀寫PART字符串的讀寫三四
函種數
字符串讀取函數fgets格式:fgets(字符數組名st,n,文件指針fp);功能:從fp所指向的函數的當前位置讀取n-1個
字符,在讀入的最后一個字符后加上串
結束標志“\0”,組成字符串后存入st
指定的內存區(qū)。字符串的讀寫三四
函種數
讀取文件input中的一個包含6個字符的字符串。程序分析程序中首先定義一個字符數組st,共6個字節(jié),以讀文本文件方式打開文件input.txt,從中讀出5個字符送入str數組,在數組最后一個單元內加上“\0”,然后再屏幕上輸出st數組。字符串的讀寫三四
函種數
字符串寫入函數fputs格式:fputs(字符串st,文件指針fp);功能:將st處存放的一個字符串,寫入fp所指向
的文本文件中。寫入文件時,字符串結束
標志并不寫入文件。
字符串的讀寫三四
函種數
【例11-4】在【例11-2】建立的文件input.txt
中追加一個字符串。程序分析本例要求在input.txt文件末尾追加字符串,因此,在程序中用追加讀寫文本文件的方式打開文件input.txt。然后輸入字符串,并用fputs函數把該字符串寫入文件st。四數據塊的讀寫PART數據塊的讀寫四四
函種數
數據塊讀取函數fread格式:fread(buffer,size,n,fp);功能:從fp所指向的文件中讀取n塊字節(jié)數為size的數據塊,將這些數據塊存入buffer
指定的內存區(qū)。
數據塊的讀寫四四
函種數
數據塊寫入函數fwrite格式:fwrite(buffer,size,n,fp);
功能:將buffer指向的內存區(qū)域的n塊字節(jié)數為size的數據塊寫入fp所指向的文件中。五格式化的讀寫PART格式化的讀寫五四
函種數
格式化數據讀取函數fscanf格式:fscanf(文件指針fp,格式字符串,輸入表列);
功能:按照格式字符串的指定格式,從fp指向的
文件中讀取數據存放在輸入表列中變量所
對應的內存地址中。格式化的讀寫五四
函種數
格式化數據寫入函數fprintf格式:fprintf(文件指針fp,格式字符串,輸出表列);
功能:按照格式字符串的指定格式,將輸出表列
中對應的地址的數據寫入fp指向的文件中。六文件的定位PARTrewind函數調用格式:rewind(文件指針fp);作用:
使位置指針指向文件的開頭,該函數沒有返回值。
fseek函數調用格式:fseek(文件指針fp,位移量,起始點);
作用:
使位置指針指向文件的開頭,該函數沒有返回值。
一、文件的定位函數隨機文件讀寫起始點表示方法一、文件的定位函數起始點表示符號數字表示文件首SEEK-SET0當前位置SEEK-CUR1文件末尾SEEK-END2二、文件檢測函數文件結束檢測函數feof測試當前位置函數ftell讀寫文件出錯檢測函數ferror1文件結束檢測函數feof調用格式:feof(文件指針fp);功能:判斷文件是否處于文件結束位置,如文件結
束,則返回值為1,否則為0。二、文件檢測函數2測試當前位置函數ftell調用格式:ftell(文件指針fp)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 高一英語 總復習資料
- 山東大學威海校區(qū)614綜合A(含法理學、憲法學、行政法學)之法理學考研沖刺密押題
- 主題:我是中國人
- 師徒結對總結范文(7篇)001
- 小學語文老師業(yè)務工作總結集錦3篇
- 網絡營銷 第3版 教案全套 魏亞萍 6.1 網絡視頻營銷認知-10-1.2網絡推廣效果評估
- 光伏纜承攬合同
- 2025年石油鉆采機械項目合作計劃書
- 荊州出租車租賃合同
- 辦公場地租賃合同場地使用合同范文
- 江蘇省南通市崇川區(qū)2023-2024學年八上期末數學試題(原卷版)
- 河南省鄭州市2023-2024學年高二上學期期末考試歷史試題(解析版)
- 遼寧省沈陽市沈河區(qū)2024-2025學年九年級上學期期末道德與法治試題(含答案)
- 2024年獨家:國際商標授權使用合同
- 2024年農行農業(yè)用途個人貸款抵押合同樣本3篇
- 2024年瀝青攪拌站建設及設備供應協議版
- 蘇教版(2024新版)七年級上冊生物期末學情評估模擬試卷(含答案)
- 中國傳統節(jié)日《元旦節(jié)》課件
- 趣味可拓學智慧樹知到期末考試答案章節(jié)答案2024年廣東工業(yè)大學
- 2023-2024學年廣東省深圳市福田區(qū)教科版三年級上冊期末考試科學試卷
- 2024年人民日報社招聘筆試參考題庫附帶答案詳解
評論
0/150
提交評論