VBA代码可将字节偏移量写入文件

问题描述

我正在尝试学习使用VBA进行字节操作,并且想知道如何才能将特定字节以特定的十六进制(这确实是一个很长的)偏移量写入文件

利用其他一些资源,例如:https://wiki.c2.com/?HexDumpInManyProgrammingLanguages,我能够创建一个函数来对导入的文件执行十六进制转储(让我知道是否要查看代码-说实话,这不是很花哨)。

但是,我想更进一步,并以特定的偏移量添加数据。到目前为止,从各种资源中,我已经收集到它看起来像这样:

Dim FF as Long
Dim DataArrayToWrite() as Byte
Dim Data as String

Data = "Test!"
FF = FreeFile

DataArrayToWrite = StrConv(Data,vbFromUnicode)
Open filename For Binary Access Write As #FF
   put #FF,DataArrayToWrite
Close

您可以很容易地看出,这只是一个基本的开始-肯定不会将数据放置在我指定的特定十六进制偏移处。但是,有人将如何将特定的DataArray写入文件中的偏移量?

我需要首先以Binary格式读取整个文件吗?这是我最初的想法:

Dim BaseDataArray() as Byte

BaseFile = "C:\Users\user\test.txt"
Open BaseFile For Binary as #FF
ReDim BaseDataArray(LOF(FF))
Get #FF,BaseDataArray()
Close #FF

但是,我仍然有点卡住,因为我不确定如何利用BaseDataArray在给定的偏移量处插入DataArray。非常感谢您的帮助!

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)