Open PathFile For Binary As……二进制写文件,输出后,内容不符合,请教!
Dim ResFile() As Byte
Dim FileNo As Integer
FileNo = FreeFile
ResFile = LoadResData(101, "CUSTOM")
Open "C:\x.dll" For Binary As FileNo
Put FileNo , , ResFile
Close FileNo
这样写应该没问题吧?
在向写入 C 盘 x.dll的时候,如果已经存在 x.dll,且 x.dll的文件比 资源文件 里的 大
那么 写入后,x.dll 会出现多余部分···
例如 C盘下存在1个 x.dll 有 123456 字节,如果我写入的是 123450 字节,那么,文件还是123456字节,
会多出6个字节···
难道Open写入的时候,不是全新重新文件的??
只能先删除原来,再重新写入?
[解决办法]
Open "C:\x.dll" For Binary As FileNo
你这句缺省是复写,你试试写成这样:
Open "C:\x.dll" For Binary access write As FileNo
[解决办法]
二进制方式始终是在原文件上进行修改写入,要新建写先用 kill 进行删除。