FILEfp-崑山科技大學.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
FILEfp-崑山科技大學

CH-10 檔案處理 V2 檔案觀念 「檔案」(Files)是儲存在電腦周邊裝置的位元組資料集合,通常是儲存在軟硬磁碟機的資料,程式可以將輸出的資料儲存在檔案中保存,或是將檔案視為輸入資料讀取檔案內容,檔案的位元組資料可能被解譯成字元、數值、整數、字串或資料庫的記錄,取決於程式開啟的檔案存取類型。 C語言標準函式庫的「檔案I/O」(File Input/Output)函數可以處理二種檔案類型:文字和二進位檔案。 文字檔案 文字檔案儲存的是字元資料,文字檔案視為一種「文字串流」(Text Stream),串流可以想像成水龍頭流出的是一個個字元,也就是說處理文字檔案只能向前一個個循序處理字元,也稱為「循序檔案」(Squential Files),如同水往低處流,並不能回頭處理之前處理過的字元。 文字檔案的處理 讀取(Input) 寫入(Output) 新增(Append)(如同輸出) 文字檔案的讀寫 開啟與關閉文字檔案 讀寫字串到文字檔案 讀寫字元到文字檔案 格式化讀寫文字檔案 開檔與關檔 開檔 FILE *fopen(char *filename, char *mode) FILE *fp; fp = fopen(“aa.txt”, “r”); fp = fopen(“bb.txt”,”w”); fp = fopen(“cc.txt”,”a”); 關檔 int fclose(FILE *fp); fclose(fp); File mode r w a r+ w+ a+ 檢查檔案是否開啟 if ( fp == NULL ) { printf(檔案開啟失敗....\n); exit(1); } 從文字檔案讀寫字串 int fputs(char *str,FILE *fp); fputs(line , fp); /* 寫入字串 */ char *fgets(char *str, int num, FILE *fp ) fgets(line, 50 ,fp); /* 讀出字串*/ 讀取整個檔案內容 While ( fgets(line, 50 ,fp) != NULL ) { ………………… } 從文字檔案讀寫字元 int putc(int ch , FILE *fp); putc(line[j] , fp); /* 寫入字元 */ char getc(FILE *fp); c = getc(fp); /* 讀出字元 */ while ((c = getc(fp)) != EOF ) putchar(c); 格式化讀寫 int fprintf(FILE *fp, char * control , …..); fprintf(fp, %d: %s\n, i+1, line); int fscanf(FILE *fp, char * control , …..); fscanf(fp,%s, line ); 開關檔範例 #include stdio.h #include stdlib.h main(int argc, char *argv[]) { FILE *fp; if ( argc = 2 ) { printf(使用: Ch10-2-1.exe filename mode\n); exit(1); /* 錯誤, 結束程式 */ } fp = fopen(argv[1], argv[2]); if ( fp == NULL ) { /* 檔案開啟失敗 */ printf(檔案[%s]開啟失敗....\n, argv[1]); exit(1); /* 錯誤, 結束程式 */ } else { printf(開啟檔案:[%s]\n, argv[1]); printf(檔案模式:[%s]\n, argv[2]); } fclose(fp); /* 關閉檔案 */ } ex01結果 讀寫字串範例 #include stdio.h main() { FILE *fp; char filename[20] = ../bb.txt; char line[50] = KSU ELE\n; char *c; int i, count; fp = fopen(filename, w); printf(開始寫入檔案%s....\n, filename); for ( i = 0; i 5; i++)

文档评论(0)

2752433145 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档