Вход/Регистрация
Windows Script Host для Windows 2000/XP
вернуться

Попов Андрей Викторович

Шрифт:

}

//Сортировка массива и вывод его содержимого в выходной файл

function ListPersonArray {

 var i;

 //Сортировка массива по фамилии

 PersonArr.sort(SortLastName);

 //Цикл по всем элементам массива PersonArr

 for (i=0;i<=PersonArr.length-1;i++) {

//Запись информации в выходной файл

PrintPerson(PersonArr[i]);

 }

}

//Функция для сортировки массива по фамилии

function SortLastName(Pers1,Pers2) {

 if (Pers1.LastName<Pers2.LastName) return -1;

 else if (Pers1.LastName==Pers2.LastName) return 0;

 else return 1;

}

//Основная запускная функция

function Main {

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

 WshShell = WScript.CreateObject("WScript.Shell");

 //Определяем пути к файлам

 InitPath;

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

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

 //Открываем выходной файл для записи

 FOut=FSO.OpenTextFile(PathOut,ForWriting,true);

 //Печатаем заголовок отчета

 TopReport("Список всех записей, сортировка по фамилии");

 //Считываем данные из файла в массив

 FileToArray;

 //Записываем информацию из массива в выходной файл

 ListPersonArray;

 //Печатаем итоговую информацию

 BottomReport("Всего записей: "+PersonArr.length);

 //Открываем выходной файл в Блокноте

 MakeOut;

}

//Запускаем основную функцию

Main;

</script>

</job>

<!-- *************** Поиск записей по фамилии ************** -->

<job id="FindName">

<script language="VBScript" src="WSHInputBox.vbs"/>

<script language="JScript" src="usage.js"/>

<script language="JScript">

//Поиск в XML-файле нужных записей и сохранение их в

//массиве PersonArr

function RecordsToArray(LastName) {

 var XMLDoc,Root,sSelect,i,Parent,NodeList;

 //Создаем массив PersonArr

 PersonArr=new Array;

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

 XMLDoc = WScript.CreateObject("Msxml.DOMDocument");

 //Загружаем XML-файл

 XMLDoc.load(PathBook);

 //Сохраняем в переменной Root ссылку на корневой элемент

 //документа

 Root=XMLDoc.documentElement;

 //Формируем строку для поиска фамилии

 sSelect="Person/LastName[text='"+LastName+"']";

 //Создаем коллекцию NodeList всех элементов LastName,

 //значение которых совпадает со значением переменной LastName

 NodeList=XMLDoc.documentElement.selectNodes(sSelect);

 if (NodeList.length==0) {//Коллекция NodeList пуста

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

WshShell.Popup("Фамилия "+ LastName+ " не найдена!", 0,

"Записная книжка",vbInformation+vbOkOnly);

//Завершаем выполнение задания

WScript.Quit;

 } else { //Требуемая фамилия найдена

//Цикл по всем найденным элементам LastName

for (i=0;i<=NodeList.length-1;i++) {

//Определяем родительский элемент (Person) для найденного

  • Читать дальше
  • 1
  • ...
  • 126
  • 127
  • 128
  • 129
  • 130
  • 131
  • 132
  • 133
  • 134
  • 135
  • 136
  • ...

Ебукер (ebooker) – онлайн-библиотека на русском языке. Книги доступны онлайн, без утомительной регистрации. Огромный выбор и удобный дизайн, позволяющий читать без проблем. Добавляйте сайт в закладки! Все произведения загружаются пользователями: если считаете, что ваши авторские права нарушены – используйте форму обратной связи.

Полезные ссылки

  • Моя полка

Контакты

  • chitat.ebooker@gmail.com

Подпишитесь на рассылку: