作者acosy (acosy)
看板Visual_Basic
标题Re: [VB6 ] duplicate binary file
时间Fri Aug 5 12:46:19 2005
感激不尽! 但是发现处理比较大档案时,
程式会当掉, 且颇吃资源, 是因为没有用 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
1F:推 mouse26:回圈里插入一行doevents即可 210.58.40.212 08/05
2F:推 fumizuki:文字很好表现吧 回圈执行时间很长的话就加楼上 210.58.156.43 08/05
3F:推 fumizuki:所说的 210.58.156.43 08/05
4F:推 fumizuki:第二个方法只适合小的档案~ 210.58.156.43 08/05