線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:2402
推到 Plurk!
推到 Facebook!

讀取 檔案大小5G *.RAW(二進制格式) 之讀檔問題

答題得分者是:aftcast
jesson
一般會員


發表:11
回覆:16
積分:5
註冊:2002-04-21

發送簡訊給我
#1 引用回覆 回覆 發表時間:2009-10-27 15:39:26 IP:210.64.xxx.xxx 訂閱
Hello! 各位前輩您好:

小弟利用BCB Win32API之 CreateFile 與 ReadFile 進行讀檔,發現 讀取 檔案大小5G *.RAW(二進制格式) 時,

會發生檔案Overflow(檔案溢位=>檔案指標會歸至檔頭位置),之後讀取到的影像結果就會從檔頭開始,直到讀到檔尾位置時

,都無法讀取到實際檔尾資訊,小弟個人認為可能是檔案Overflow造成,但若用 Visual Studio.Net 之 System.IO 模組進行開檔讀檔

卻一切正常,可順利讀取到檔尾資訊。

不知各位前輩們,可否提供迷津 如何在 BCB 上也可以順利讀取大檔案(5G以上 => 大小5907840000 位元組)呢?

小弟有Check過CreateFile檔案指標大小為 4294967295(unsigned long int) 小於 5907840000 ,因此造成檔案指標無法只到檔尾處,就發生溢位,

不知有何良方可否解決此問題?
編輯記錄
jesson 重新編輯於 2009-10-27 16:05:37, 註解 無‧
aftcast
站務副站長


發表:81
回覆:1485
積分:1763
註冊:2002-11-21

發送簡訊給我
#2 引用回覆 回覆 發表時間:2009-10-27 18:48:33 IP:210.64.xxx.xxx 訂閱
SetFilePointerEx

http://www.cnblogs.com/wz19860913/archive/2008/08/17/1269729.html


------


蕭沖
--All ideas are worthless unless implemented--

C++ Builder Delphi Taiwan G+ 社群
http://bit.ly/cbtaiwan
jesson
一般會員


發表:11
回覆:16
積分:5
註冊:2002-04-21

發送簡訊給我
#3 引用回覆 回覆 發表時間:2009-10-28 11:46:38 IP:61.20.xxx.xxx 訂閱
感謝 兄台 提供這不錯的文章,問題已解決,可用 SetFilePointerEx

SetFilePointer 皆可解決上述問題,只有一個人回,當然點數是給兄台您囉!謝謝囉~~


===================引 用 aftcast 文 章===================
SetFilePointerEx

http://www.cnblogs.com/wz19860913/archive/2008/08/17/1269729.html


系統時間:2024-03-29 5:13:32
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!