我正在寻找一种使用vbscript(大-1 GB)读取大二进制文件的方法。我无法使用ReadAll函数直接读取它,因为文件太大,因此我正在寻找一种循环读取它的方法,例如在c中。所以我想每次读取X个字节,继续读取它们(我不需要写完整的文件来做我的工作),然后再读取下10个字节并重新读取。 问题是我找不到方法,我知道如何从偏移开始读取,但是找不到读取X字节的方法,只有ReadAll和ReadLine函数。 有没有办法读取X个字节?
答案 0 :(得分:1)
如有疑问,请阅读documentation:
读取方法
从TextStream文件中读取指定数量的字符,并返回结果字符串。
语法
object.Read(characters)
参数
- 对象
需要。始终是TextStream对象的名称。- 字符
需要。您要从文件中读取的字符数。
filename = "C:\path\to\your.file"
Set fso = CreateObject("Scripting.FileSystemObject")
Set f = fso.OpenTextFile(filename)
Do Until f.AtEndOfStream
buf = f.Read(10)
'...
Loop
f.Close
但是请注意,Read()
方法本身并不读取字节,而是读取字符。只要您以ANSI模式(默认)打开文件,它就大致相同。