[問題] 請問C語言寫入Binary檔問題

看板C_and_CPP (C/C++)作者 (大狗)時間16年前 (2009/08/19 23:43), 編輯推噓1(102)
留言3則, 2人參與, 最新討論串1/1
請教各位大大..我的程式是這樣的.. 會使用 fopen(r+b) 的API去讀入1個Bmp檔 然後我會去修改並縮減Bmp的資料 假設原本的檔案為400K 修改後...我所需要的大小只剩300K (使用 fwrite去寫入我要的資料..最後一筆的資料寫完是300K) 然後用fclose去關檔 但該Bmp檔最後的大小仍是400K...我不需要的最後100K資料仍舊存在 想請問是否有任何C的API可以達到我要的結果?(捨棄最後100K的資料..整個檔案變300K) 還是說有任何其他的方法呢? 我有想過可以另存一個檔案再刪除原本檔案之類的方法 但我想是否還有其他建議或方法? 感謝各位的指點! -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 118.165.77.211

08/21 01:00, , 1F
檔案的位址問題~檔案的資訊是存在FAT裡應該是連FAT那邊也要改
08/21 01:00, 1F

08/21 17:25, , 2F
你可以在寫入之前重新 fopen 一次 用 "wb"
08/21 17:25, 2F

08/21 17:25, , 3F
記得要先 fclose
08/21 17:25, 3F
文章代碼(AID): #1AZ1st0F (C_and_CPP)
文章代碼(AID): #1AZ1st0F (C_and_CPP)