作者LPH66 (IWH68S0XZ8M89)
看板Programming
標題Re: [問題] FAT32與fseek()
時間Wed Nov 14 23:52:42 2007
※ 引述《bobhsiao (㊣小臃腫㊣)》之銘言:
: 當:
: AP執行:fseek(fp, 0, SEEK_END); //移到檔案尾端(可得檔案長度)
: 底層:要找到該檔的最後一個CLUSTER,並記錄,
: 以便 fread(), fwrite()...等函數可以順利執行
: 問題說明:
: FAT的資料都是以CHAIN連接, 要找最後一個CLUSTER,
: 也要 "從頭" 開始找, 當檔案很大時, 找越後面的
: CLUSTER也會越久.
: 我的問題是:
: 有什麼聰明的方法可以加快嗎?
: 是不是在初始化時將整個FAT表讀完?
這已經是很底層的動作了...
我沒搞錯的話這一部份是BIOS在管的
除非你是自己去讀FAT (但一般PC應該不會有這種需求吧...?)
不然其實你就放心fseek下去就好了 其他的事情BIOS會幫你管的
(現在磁區規劃都做得讓cluster數不要太多 這樣找起來也方便 也不會停太久)
--
有人喜歡邊
玩遊戲邊
上逼;
也有人喜歡邊
聽歌邊
打字。
但是,我有個請求,
選字的時候請
專心好嗎?
-- 改編自「古 火田 任三郎」之開場白
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.112.91.5
推 bobhsiao:為了要讓板子(非pc)可以讀sd卡才有的需求 122.116.133.59 11/14 23:57
推 sunneo:嗯...的確是bios的中斷常式在作的220.132.228.138 11/16 23:32