/* Язык: JScript                                                   */

/* Описание: Запись строк в текстовый файл и чтение из него        */

/*******************************************************************/

var FSO,F,TextStream,s;  //Объявляем переменные

//Инициализируем константы

var ForReading = 1, ForWriting = 2, TristateUseDefault = -2;

//Создаем объект FileSystemObject

FSO=WScript.CreateObject('Scripting.FileSystemObject');

//Создаем в текущем каталоге файл test1.txt

FSO.CreateTextFile('test1.txt');

//Создаем объект File для файла test1.txt

F=FSO.GetFile('test1.txt');

//Создаем объект TextStream (файл открывается для записи)

TextStream=F.OpenAsTextStream(ForWriting, TristateUseDefault);

//Записываем в файл строку

TextStream.WriteLine('Это первая строка');

//Закрываем файл

TextStream.Close();

//Открываем файл для чтения

TextStream=F.OpenAsTextStream(ForReading, TristateUseDefault);

//Считываем строку из файла

s=TextStream.ReadLine();

//Закрываем файл

TextStream.Close();

//Отображаем строку на экране

WScript.Echo('Первая строка из файла test1.txt: ',s);

/*************  Конец *********************************************/ 

Коллекция Files

Коллекция Files содержит объекты File для всех файлов, находящихся внутри определенного каталога. Создается эта коллекция с помощью свойства Files соответствующего объекта Folder. Например, в следующем примере переменная Files является коллекцией, содержащей объекты File для всех файлов в каталоге С:Мои документы:

var FSO, F, Files;

FSO=WScript.CreateObject('Scripting.FileSystemObject');

F=FSO.GetFolder('С:\Мои документы');

Files=F.Files;

Как и рассмотренные выше коллекции Drives и Folders, коллекция Files имеет свойство Count и метод Item.

Для доступа в цикле ко всем элементам коллекции Files применяется объект Enumerator. В качестве примера использования этого объекта в листинге 5.14 приведен сценарий ListFiles.js, выводящий на экран названия всех файлов, которые содержатся в специальной папке 'Мои документы' (рис. 5.6). 

Рис. 5.6. Список всех файлов в специальной папке 'Мои документы'

Листинг 5.14. Построение списка файлов

/*******************************************************************/

/* Имя: ListFiles.js                                               */

/* Язык: JScript                                                   */

/* Описание: Получение списка всех файлов заданного каталога       */

/*******************************************************************/

//Объявляем переменные

var FSO,F,Files,WshShell,PathList,s;

//Создаем объект FileSystemObject

FSO=WScript.CreateObject('Scripting.FileSystemObject');

//Создаем объект WshShell

WshShell=WScript.CreateObject('Wscript.Shell');

//Создаем объект WshSpecialFolders

WshFldrs=WshShell.SpecialFolders;

//Определяем путь к папке 'Мои документы'

PathList=WshFldrs.item('MyDocuments')+'\';

//Создаем объект Folder для папки 'Мои документы'

F=FSO.GetFolder(PathList);

//Создаем коллекцию файлов каталога 'Мои документы'

Files=new Enumerator(F.Files);

s = 'Файлы из каталога '+PathList+' ';

//Цикл по всем файлам

for (; !Files.atEnd(); Files.moveNext())

 //Добавляем строку с именем файла

 s+=Files.item().Name+' ';

//Выводим полученные строки на экран

WScript.Echo(s);

/*************  Конец *********************************************/ 

Объект TextStream

Объект TextStream обеспечивает последовательный (строка за строкой) доступ к текстовому файлу. Методы этого объекта позволяют читать информацию из файла и записывать ее в него.

Создать объект TextStream можно с помощью следующих методов:

? CreateTextFile объектов FileSystemObject и Folder;

? OpenTextFile объекта FileSystemObject;

? OpenAsTextStream объекта File.

В следующем примере переменная F является объектом TextStream и используется для записи строки текста в файл C:TestFile.txt:

//Создаем объект FileSystemObject

var FSOWScript.CreateObject('Scripting. FileSystemObject');

//Создаем текстовый файл

var F=FSO.CreateTextFile('C:\TestFile.txt', true);

//Записываем строку в файл

Добавить отзыв
ВСЕ ОТЗЫВЫ О КНИГЕ В ИЗБРАННОЕ

0

Вы можете отметить интересные вам фрагменты текста, которые будут доступны по уникальной ссылке в адресной строке браузера.

Отметить Добавить цитату