微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

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

如何解决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 举报,一经查实,本站将立刻删除。