📄 把文件读完后再写入另一个文件,为什么就会出错.txt
字号:
问题出在你的ReDim语句上,每次你用ReDim改变数组大小时,以前读进来的数都会被仍掉,所以写的时候除了最后一个字节都不对。要保留以前读的数,应该改为:
ReDim Preserve a(1 To i)
实际上,你可以使用FileLen得到文件长度,这样程序可以简化:
Dim a() As Byte
Open "c:\windows\desktop\flash.exe" For Binary As #2
Open "d:\flash.exe" For Binary As #1
Dim i As Long
i = 0
ReDim a(1 To FileLen("c:\windows\desktop\flash.exe"))
Do While Not EOF(1)
i = i + 1
Get #1, , a(i)
Loop
For s = 1 To i
Put #2, , a(s)
Next
Close 1
Close 2
<END>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -