在vbscript中逐字节读取文件

时间:2018-11-06 16:50:41

标签: vbscript binaryfiles

我正在寻找一种使用vbscript(大-1 GB)读取大二进制文件的方法。我无法使用ReadAll函数直接读取它,因为文件太大,因此我正在寻找一种循环读取它的方法,例如在c中。所以我想每次读取X个字节,继续读取它们(我不需要写完整的文件来做我的工作),然后再读取下10个字节并重新读取。 问题是我找不到方法,我知道如何从偏移开始读取,但是找不到读取X字节的方法,只有ReadAll和ReadLine函数。 有没有办法读取X个字节?

1 个答案:

答案 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模式(默认)打开文件,它就大致相同。