Читать файл байт за байтом в VBScript - PullRequest
0 голосов
/ 06 ноября 2018

Я ищу способ прочитать большой двоичный файл, используя vbscript (большой - 1 ГБ). Я не могу прочитать его напрямую с помощью функции ReadAll, потому что файл слишком большой, поэтому я ищу способ прочитать его в цикле, как в c. Поэтому я хочу читать каждый раз X байтов, обрабатывать их (мне не нужен полный файл, чтобы выполнять свои действия), затем читать следующие 10 и снова. Проблема в том, что я не могу найти способ сделать это, я знаю, как начать чтение со смещения, но не могу найти способ прочитать X байтов, есть только функции ReadAll и ReadLine. Есть ли способ прочитать X байтов?

1 Ответ

0 голосов
/ 06 ноября 2018

В случае сомнений прочитайте документацию :

Способ чтения

Считывает указанное количество символов из файла 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 (по умолчанию).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...