1

Тема: JScript: Обработка TextStream

Доброго времени суток! Известно, что метод StdOut возвращает объект TextStream. Есть ли какая-нибудь возможность обрабатывать TextStream так же, как и простую строку? Или просто переделать в строку. О варианте записи в текстовый файл и обратном считывании знаю, но рассматриваю его исключительно в качестве крайнего метода.

2

Re: JScript: Обработка TextStream

readAll() ?

3

Re: JScript: Обработка TextStream

Следовало бы сразу показать кусок кода для более конкретного объяснения проблемы.


WshShell = WScript.CreateObject("WScript.Shell");
var InStream = WshExec.StdIn;
InStream.WriteLine(connect);
InStream.WriteLine (user);
InStream.WriteLine("binary");
InStream.WriteLine ("prompt");
InStream.WriteLine("dir");
InStream.WriteLine("bye");
var OutStream = WshExec.StdOut;
while (!OutStream.AtEndOfStream) {
    ParseDIRout(OutStream.ReadLine());
}

Проблема в том, что в функцию ParseDIRout передается не строка, а объект TextStream, который необходимо обрабатывать как строку

4

Re: JScript: Обработка TextStream

ReadLine() возвращает значение типа String... Можете проверить с помощью typeof()

with(
 new ActiveXObject('WScript.Shell')
 .exec('graftabl.com')
 .stdOut
){
  // только третья строка:
  skipLine(),skipLine();
  WScript.echo(typeof(readLine()));
  // весь вывод:
  // WScript.echo(readAll());
}

5

Re: JScript: Обработка TextStream

Действительно! Спасибо, буду искать ошибку в другом.