Re: [VB6 ] duplicate binary file

看板Visual_Basic作者 (acosy)時間19年前 (2005/08/05 12:38), 編輯推噓4(400)
留言4則, 2人參與, 最新討論串3/4 (看更多)
感激不盡! 但是發現處理比較大檔案時, 程式會當掉, 且頗吃資源, 是因為沒有用 buffer 就邊讀編寫 的關係嗎? 另外, 表單中不知如何實現動態文字, 想呈現 xx% 的進度, 卻到 100 % 才顯現出來. ※ 引述《fumizuki (小獅子)》之銘言: : ※ 引述《acosy (acosy)》之銘言: : : 一個簡單的二進位檔複製.. : : ------ : : open "c:\xxx.1" for binary access read as #1 : : open "c:\xxx.2" for binary access write as #2 : : do until eof(1) : : get #1, ,a : : put #2, ,a : : loop : : close #1 : : close #2 : : -------- : : 結果 xxx.2 總會比 xxx.1 多出 1 bytes, why?? : 多出一個 chr(0) ,不知道為何讀到 0 ... eof才會是true @@ : 下面兩種方法就不會有這問題 : 1) : Dim a As Byte : Open "c:\xxx.1" For Binary As #1 : Open "c:\xxx.2" For Binary As #2 : Do While Loc(1) < LOF(1) : Get #1, , a : Put #2, , a : Loop : Close : 2) : Dim a() As Byte : Open "c:\xxx.1" For Binary As #1 : Open "c:\xxx.2" For Binary As #2 : Redim a(LOF(1) - 1) : Get #1, , a : Put #2, , a : Close -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 61.60.197.145

210.58.40.212 08/05, , 1F
迴圈裡插入一行doevents即可
210.58.40.212 08/05, 1F

210.58.156.43 08/05, , 2F
文字很好表現吧 迴圈執行時間很長的話就加樓上
210.58.156.43 08/05, 2F

210.58.156.43 08/05, , 3F
所說的
210.58.156.43 08/05, 3F

210.58.156.43 08/05, , 4F
第二個方法只適合小的檔案~
210.58.156.43 08/05, 4F
文章代碼(AID): #12ykqx1f (Visual_Basic)
討論串 (同標題文章)
本文引述了以下文章的的內容:
以下文章回應了本文
完整討論串 (本文為第 3 之 4 篇):
文章代碼(AID): #12ykqx1f (Visual_Basic)