WScript.Echo('');

 WScript.Echo('Перемещено файлов:',Col);

 WScript.Echo('Нажмите Enter...');

 WScript.StdIn.ReadLine();

}

/*******************  Начало  **********************************/

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

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

//Проверяем наличие каталога-источника

if (!FSO.FolderExists(Source)) {

 //Выводим сообщение об отсутствии каталога-источника

 WScript.Echo('Каталог-источник',Source,'не существует.');

 WScript.Echo('Нажмите Enter...');

 WScript.StdIn.ReadLine();

 //Выходим из сценария

 WScript.Quit();

}

//Проверяем наличие целевого каталога

if (!FSO.FolderExists(Dest)) {

 //Выводим сообщение об отсутствии целевого каталога

 WScript.Echo('Целевой каталог',Dest,'не существует.');

 WScript.StdIn.ReadLine();

 WScript.StdIn.ReadLine();

 //Выходим из сценария

 WScript.Quit();

}

//Создаем объект Folder для каталога-источника

Fold=FSO.GetFolder(Source);

//Создаем объект Enumerator для доступа к коллекцию файлов

//в каталоге-источнике

Files=new Enumerator(Fold.Files);

//Записываем информацию в log-файл

WriteLog();

//Перемещаем файлы в целевой каталог

MoveFiles();

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

// Вспомогательные функции 

//Дополнение строки ss ведущими нулями до длины ll

function LeadZero(ll,ss) {

 var i,s,l1;

 s=ss.toString();

 l1=s.length;

 if (l1<=ll) {

  for (i=1;i<=ll-l1;i++) s='0'+s;

 }

 return(s);

}

//Формирование из объекта Date строки формата ДД/ММ/ГГГГ

function DateToStr(dd) {

 var s;

 s=LeadZero(2,dd.getDate())+'/';

 s+=LeadZero(2,dd.getMonth()+1)+'/';

 s+=dd.getYear();

 return(s);

}

//Формирование из объекта Date строки формата ЧЧ:ММ

function TimeToStr(dd) {

 var s;

 s=LeadZero(2,dd.getHours())+':'+LeadZero(2,dd.getMinutes());

 return(s);

}

//Выравнивание строки s влево в поле длиной l символов

function LFillStr(l,s) {

 var ss,i,ll;

 ll=l-s.length;

 if (s.length>=l) {

  return(s);

 } else {

  ss=s;

  for (i=1;i<=ll;i++) {

   ss=ss+' ';

  }

  return(ss);

 }

}

Разработка записной книжки в формате текстового файла

Последний пример, который мы рассмотрим в этой главе, посвящен обработке данных, хранящихся в текстовом файле с разделителями (это может быть, например, выборка из электронной таблицы, базы данных и т.п.).

Предположим, что имеется файл book.txt, содержащий информацию из записной книжки в следующем формате:

Фамилия|Имя|Телефон|Улица|Дом|Кв.|Примечание

В качестве примера мы будем рассматривать файл book.txt, приведенный в листинге 5.20.

Листинг 5.20. Содержимое файла book.txt

Потапов|Сергей|55-55-55|Моховая|3|10|Без примечаний

Попов|Андрей|56-56-56|Ленина|3|5|Без примечаний

Иванов|Иван|17-17-17|Садовая|4|6|Очень хороший человек

Казаков|Сергей|24-19-68|Полежаева|101|22|Тоже очень хороший человек

Ниже приведен сценарий SortName.js, который реализует одну из функций для работы с записной книжкой — в результате работы этого сценария все записи из book.txt сортируются по фамилии и отображаются в Блокноте (рис. 5.14).

Опишем кратко алгоритм работы сценария SortName.js.

1. Информация из файла book.txt считывается в массив PersonArr. Каждый элемент массива является объектом типа Person, в котором хранятся все данные для одного человека.

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

0

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

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