- 1、本文档共15页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
将资料存入磁碟或由磁碟取出资料的方式.ppt
檔案 將資料存入磁碟或由磁碟取出資料的方式, 稱為檔案存取處理。 C語言的檔案處理 C++語言的檔案處理 檔案的種類 檔案依資料存取方式可分為循序檔與隨機檔, 分別說明如下: 循序檔 採用整批儲存與整批取出資料的方式稱為循序檔, 此種存取模式較適合文書檔的儲存。例如, 當我們編輯一封書信時, 通常都是整篇儲存, 編輯時亦是整篇取出修改後全部儲存。 隨機檔 可以指定資料位置的存取方式稱為隨機檔, 此種存取模式較適合數值資料的儲存。例如, 你可能從一堆學生資料中讀取或修改某一個人的成績。又例如, 104 的電話查號, 亦是從一大堆資料中讀取一筆資料, 此時當然沒有必要將全部資料全部載入記憶體, 而是依照自己的需求讀取指定位置的某一或某些筆資料即可, 此時即需使用隨機檔。 檔案處理的演進 C 語言 程序導向的C 語言是採用fopen、fclose 、fprintf、fscanf 及feof 等函式處理循序或隨機檔案, 請看15-1 節。 C + + 語言 物件導向的C++ 語言是採用ifstream 、ofstream 等類別的方式處理循序或隨機檔案, 請看15-2 節。 C++ Builder C++ Builder 則是採用資料庫元件的方式處理檔案, 由於資料庫元件已有長足的進步, 所以本書於第16 ~22 章大力介紹這些資料庫元件。關於C 與C++ 的檔案處理則僅以循序檔簡介, 讀者可於此體會這些程式語言的演進。 15 -1 C 語言的檔案處理 C 語言常用的檔案處理函式, 分別是fopen 、fclose 、fprintf 、fscanf 、feof、fseek 、fwrite 、fread、fileno 、filelength 及sizeof 等函式, 使用這些函式前應匯入stdio.h, 如下所示。 #include stdio.h fopen 當您欲從磁碟存取資料時, 首先必須以fopen 開啟指定的檔案, 其函式原型共有兩種多載如下, 本單元僅舉例說明第一種多載。 其中mode 是開檔的模式, 所有模式如下圖所示。 例如, 以下敘述可開啟test1.txt, 並準備寫入資料。 FILE *outf; outf=fopen(c:\\BCBbook\\ch15\\test1.txt, w); fprintf 當您欲寫入資料至檔案時, 只要重覆使用fprintf 即可寫入資料, 其函式原型如下圖。 format format 是資料的格式, 詳細如下圖。 Conversion-type character 所有的資料均應格式化才可存檔, 其格式化字元如下圖。 例如, 以下敘述可寫入字串, 其中outf 是開檔時所傳回的檔案指標。 fprintf(outf, %s, ABC); 以下敘述可寫入整數。 fprintf(outf, %d, 25); 以下敘述, 可同時寫入一個字串, 一個整數及一個浮點數。 fprint(outf, %s %d %f, 子堯, 90, 25.5); fscanf 當您欲從檔案讀取資料時, 只要重覆使用fscanf 即可讀取資料, 其函式原型如下, 使用方式同fprintf 。 fclose 將緩衝區的資料寫入磁碟, 其語法如下: int fclose(file *stream); 當寫入成功時, 傳回0。 feof 傳回檔案指標是否已在檔案的最後面, 若是則傳回非零值;若否則傳回0。其語法如下: int feof(File *stream); 範例15-1a 請寫一個程式, 可以將RichEdit 元件的內容存入檔案且能將文字檔載入RichEdit 。 1 5 -2 C ++ 語言的檔案處理 眾所皆知, C++ 是物件導向的程式語言, 所以在檔案的處理亦實作了許多關於檔案的類別, 例如ofstream 、ifstream 與fstream 等類別。若要使用這些類別, 則應先匯入fstream, 如以下敘述。 #include fstream.h ofstream ofstream 是專門處理資料輸出的類別, 以下兩種方式皆可建立一個fout物件, 此物件可將資料輸出至C:\BCBbook\ch15\test1.txt 。 ofstream fout (C:\\BCBbook\\ch15\\test1.txt); 或 ofstream fout; fout.open(C:\\BCBbook\\ch15\\test1.txt, ios::out); 以下敘述皆可將ABCDEF 寫入指定的檔案。 fout.write(ABCDEF, 6); 或 fout ABCDEF; ifstream ifstream 是專門處理資料輸入的類
您可能关注的文档
- 北京介绍_英文.ppt
- 自动化导论第三章概要.ppt
- Analog to Digital (AD) Conversion:模数转换(AD).ppt
- Data Mining and Machine Learning with EM - 北京大学网络与 数据挖掘和机器学习的EM北京大学网络与.ppt
- Simulating a Dynamic Feedback Perspective in the - System 在系统模拟动态反馈的角度.ppt
- 【物流精选】11物流与供应链管理-风铃-第十一章 发展.ppt
- 2 微波技术基础_传输线理论_part_2.ppt
- 2012届高考复习政治课件 选修2专题1 古典经济学巨匠的理论遗产.ppt
- 第1章――银行电子化概述.ppt
- 2010中考语文专项--说明文阅读复习课件【科目考试辅导资料】.ppt
- 2025AACR十大热门靶点推荐和解读报告52页.docx
- 财务部管理报表.xlsx
- 高中物理新人教版选修3-1课件第二章恒定电流第7节闭合电路欧姆定律.ppt
- 第三单元知识梳理(课件)-三年级语文下册单元复习(部编版).pptx
- 俄罗斯知识点训练课件-七年级地理下学期人教版(2024).pptx
- 课外古诗词诵读龟虽寿-八年级语文上学期课内课件(统编版).pptx
- 高三语文二轮复习课件第七部分实用类文本阅读7.2.1.ppt
- 高考物理人教版一轮复习课件第4章第3讲圆周运动.ppt
- 高考英语一轮复习课件53Lifeinthefuture.ppt
- 2025-2030衣柜行业风险投资发展分析及投资融资策略研究报告.docx
文档评论(0)