看板 b97902HW 關於我們 聯絡資訊
在下有點弱 可是最近想去八卦板玩 苦於文章數不足 就來發文解釋 如果有錯 請各位強者指正 不好意思 fwrite 總之這是一個把東西寫進檔案的函式 語法 fwrite(A, B, C, D); A 的地方 你要填入一個位址 就是你要印什麼東西 就放進去 B 的話 你要填 你印的時候 印一個單位有多大 通常會用 sizeof() 放進去 C 的地方 你要填你要印幾個單位 D 的地方 你要填那個 FILE 型態的那個 就是寫檔案的磁頭那個 大概就這樣 然後舉個例 char out[] = {'Y', 'O', 'U', '\'', 'R', 'E', ' ', 'D', 'E', 'A', 'D'}; FILE *fw; fw = fopen("test.txt", "wb"); fwrite(out, sizeof(char), 11, fw); 這樣就會輸出一個叫 test.txt 的檔案 裡面內容是 YOU'RE DEAD fread 這是一個讀檔案內容的函式 而格式和之前一模一樣 只是一個是輸出去 一個是讀進來 看個例子就懂了 char in[100]; FILE *fr; fr = fopen("test.txt", "rb"); fread(in, sizeof(char), 5, fr); 這就是把剛剛的 test.txt 前 5 個字讀進來 就是 YOU'RE fseek 這是在調整那個讀寫的磁頭的 就是說可以把它移來移去 語法是這樣 fseek(A, B, C); A 是說 就是填你要移動的那個磁頭 B 的話 是要調多少格 如果是一個正數的話 就會往後調 負數反之 C 的話 有三個選擇可以填: SEEK_SET SEEK_END SEEK_CUR ↑ ↑ ↑ 從頭找 從尾巴找 從磁頭目前的位置開始找 當然 從頭找的話 B 就不能填負數 而從尾巴找的話 B 就不能填正數啦 舉個例 char in; FILE *fr; fr = fopen("test.txt", "rb"); fread(&in, sizeof(char), 1, fr); printf("%c\n", in); fseek(fr, 3, SEEK_CUR); fread(&in, sizeof(char), 1, fr); printf("%c\n", in); 那個 test.txt 還是剛剛的那個檔 然後這個程式會在螢幕上輸出這個的檔第 1 和第 4 個字 也就是 Y 和 R 在下講完了 如果其中有什麼錯的話 請各位高手指正 謝謝大家 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.112.240.35
vdm9999:神!神!神!神!神!神!神!神!神!神!神!神!神!神!神!神!神!神! 12/06 13:42
tempTTP1:太感謝了,不過"'"也算一個字吧? 12/06 13:49
averangeall:應該對啊 怎麼了 12/06 13:54
tempTTP1:第四個字就是"'"吧? 12/06 14:29
averangeall:是的 12/06 14:33
tempTTP1:謝謝囉! 12/06 14:37
jyt0532:自均實在是太發了 12/06 14:54
averangeall:不...絕對不發... 12/06 18:31
louis719:太強大了.. 12/06 21:10
benck:有神快拜 12/06 23:10
purplebleed:說的好~~~~~強者自均你救了我耶~~~~~ 12/06 23:28
benck:自均救了我耶 12/06 23:34
ldldldldldld:書卷自均!!!!!!!! 12/07 15:13
averangeall:樓上有點要不得...我都這麼可憐了 12/07 16:40