Свойство Drives
Свойство Drives возвращает коллекцию объектов Drive, соответствующих всем физическим и логическим дискам локального компьютера. Для просмотра этой коллекции следует пользоваться объектом Enumerator.
Пример использования свойства Drives был приведен ранее.
Метод BuildPath
Синтаксис: | fso.BuildPath(путь, имя) | Аргументы: | путь, имя - строковые выражения | Результат: | строковое значение |
Метод BuildPath добавляет к пути новую компоненту имя и возвращает результирующую строку. При необходимости перед именем добавляется разделитель "\".
Например, следующий сценарий
var fso = new ActiveXObject("Scripting.FileSystemObject"); var newpath = fso.BuildPath("c:\\My Documents", "New Folder"); document.write(newpath);
выведет на экран обозревателя текст c:\My Documents\New Folder.
Метод CopyFile
Синтаксис: | fso.CopyFile(источник, цель [, флаг]?) | Аргументы: | источник, цель - строковые выражения; флаг - логическое значение |
Метод CopyFile копирует один или несколько файлов. При этом строка источник задает спецификацию исходного файла и может содержать подстановочные знаки "*" и "?" в последней компоненте, строка цель задает имя результирующего файла или папки, а необязательный аргумент флаг указывает, следует ли заменять при копировании существующие файлы (по умолчанию он равен true, т. е. существующие файлы заменяются).
Если источник содержит подстановочные знаки или цель заканчивается символом "\", то цель считается именем папки, в которую копируются исходные файлы. В остальных случаях цель считается именем результирующего файла. Сам процесс копирования происходит так:
если нет файлов, соответствующих спецификации источника, то метод завершается ошибкой;
если файла с именем цель нет, то производится копирование файла;
если файл цель существует и флаг равен false, то метод завершается ошибкой, иначе делается попытка копирования источника поверх цели; при этом независимо от значения флага, попытка замены существующего файла с атрибутом "только для чтения" завершается ошибкой;
если цель является каталогом, то метод завершается ошибкой.
Пример: следующий сценарий копирует все файлы из корневой папки дискеты A в папку d:\Temp.
var fso = new ActiveXObject("Scripting.FileSystemObject"); fso.CopyFile("a:\\*.*", "d:\\Temp");
Метод CopyFolder
Синтаксис: | fso.CopyFolder(источник, цель [, флаг]?) | Аргументы: | источник, цель - строковые выражения; флаг - логическое выражение |
Метод CopyFolder копирует одну папку в другую, включая подпапки. При этом строка источник задает спецификацию исходной папки и может содержать подстановочные знаки "*" и "?" в последней компоненте, строка цель задает имя результирующей папки, а необязательный аргумент флаг указывает, следует ли заменять при копировании существующие файлы (по умолчанию он равен true, т. е. существующие файлы заменяются).
Если источник содержит подстановочные знаки или цель заканчивается символом "\", то цель считается именем существующей папки, в которую копируются исходные файлы. В остальных случаях цель считается именем новой папки, которую необходимо создать. Сам процесс копирования происходит так:
если нет файлов, соответствующих спецификации источника, то метод завершается ошибкой;
если папки с именем цель нет, то она создается и производится копирование файлов;
если цель задает имя существующего файла, то метод завершается ошибкой;
если файлы исходной папки уже есть в цели и флаг равен false, то метод завершается ошибкой, иначе делается попытка копирования источника поверх цели; при этом независимо от значения флага, попытка замены существующего файла с атрибутом "только для чтения" завершается ошибкой.
Пример: следующий сценарий копирует все файлы и папки из корневой папки дискеты A в папку d:\Temp.
var fso = new ActiveXObject("Scripting.FileSystemObject"); fso.CopyFolder("a:\\", "d:\\Temp");
Метод CreateFolder
Синтаксис: | fso.CreateFolder(имя) | Аргументы: | имя - строковое выражение |
Метод CreateFolder создает папку с заданным именем. Если такая папка уже есть, то метод завершается ошибкой.
Пример: следующий сценарий создает папку C:\New Folder.
var fso = new ActiveXObject("Scripting.FileSystemObject"); fso.CreateFolder("c:\\New Folder");
Метод CreateTextFile
Синтаксис: | fso.CreateTextFile(имя [[, флаг]?, unicode]?) | Аргументы: | имя - строковое выражение; флаг, unicode - логические выражения | Результат: | новый объект TextStream |
Метод CreateTextFile создает текстовый файл с заданным именем. При этом необязательный аргумент флаг указывает, следует ли удалять существующий файл с этим именем (по умолчанию он равен true, т. е. существующие файлы заменяются новыми), а необязательный аргумент unicode задает кодировку символов файла (true означает кодировку Unicode, а false - кодировку ANSI; по умолчанию создается файл в кодировке ANSI).
Пример:
var fso = new ActiveXObject("Scripting.FileSystemObject"); var ts = fso.CreateTextFile("c:\\file.txt", false); ts.WriteLine("Тестовая строка."); ts.Close();
Метод DeleteFile
Синтаксис: fso.DeleteFile(имя [, флаг]?) | Аргументы: имя - строковое выражение; флаг - логическое выражение |
Метод DeleteFile удаляет файл с заданным именем. При этом необязательный аргумент флаг указывает, следует ли удалять файл, имеющий атрибут "только для чтения" (по умолчанию он равен false, т. е. такие файлы не удаляются). Если файла с данным именем нет, то метод завершается ошибкой.
Пример:
var fso = new ActiveXObject("Scripting.FileSystemObject"); fso.DeleteFile("c:\\file.txt", true);
Метод DeleteFolder
Синтаксис: | fso.DeleteFolder(имя [, флаг]?) | Аргументы: | имя - строковое выражение; флаг - логическое выражение |
Метод DeleteFolder удаляет папку с заданным именем. При этом необязательный аргумент флаг указывает, следует ли удалять папку, имеющий атрибут "только для чтения" (по умолчанию он равен false, т. е. такие папки не удаляются). Если папки с данным именем нет, то метод завершается ошибкой.
Пример:
var fso = new ActiveXObject("Scripting.FileSystemObject"); fso.DeleteFile("c:\\file.txt", true);
Метод DriveExists
Синтаксис: | fso.DriveExists(имя) | Аргументы: | имя - строковое выражение | Результат: | логическое выражение |
Метод DriveExists проверяет, существует ли диск с заданным именем на локальном компьютере, и возвращает соответствующий результат. Строка имя может состоять из буквы, задающей имя диска ("c"), из буквы с двоеточием ("c:"), из буквы с двоеточием и разделителем пути ("c:\\") или содержать спецификацию сетевого диска ("\\computer3\\public1").
Примечание. Этот метод не проверяет наличие диска в дисководе со сменными дисками, а только существование самого дисковода. Для проверки наличия диска в дисководе пользуйтесь методом Drive.IsReady. Пример:
var fso = new ActiveXObject("Scripting.FileSystemObject"); var b = fso.DriveExists("e"); // true, если есть диск E
Метод FileExists
Синтаксис: | fso.FileExists(имя) | Аргументы: | имя - строковое выражение | Результат: | логическое выражение |
Метод FileExists проверяет, существует ли файл с заданным именем на локальном компьютере, и возвращает соответствующий результат. Строка имя должна содержать спецификацию файла.
var fso = new ActiveXObject("Scripting.FileSystemObject"); var b = fso.FileExists("c:\\test.htm"); // true, если данный файл существует
Метод FolderExists
Синтаксис: | fso.FolderExists(имя) | Аргументы: | имя - строковое выражение | Результат: | логическое выражение |
Метод FolderExists проверяет, существует ли папка с заданным именем на локальном компьютере, и возвращает соответствующий результат. Строка имя должна содержать спецификацию папки.
var fso = new ActiveXObject("Scripting.FileSystemObject"); var b = fso.FolderExists("c:\\My Pictures"); // true, если данная папка существует
Метод GetAbsolutePathName
Синтаксис: | fso.GetAbsolutePathName(путь) | Аргументы: | путь - строковое выражение | Результат: | строковое значение |
Метод GetAbsolutePathName преобразует заданный путь в полное имя пути и возвращает результирующую строку. Пусть, например, текущим каталогом является c:\My Documents\Letters. Следующая таблица иллюстрирует результаты применения метода GetAbsolutePathName к различным входным аргументам.
имя | GetAbsolutePathName(имя) |
---|
"" | "c:\\My Documents\\Letters" | ".." | "c:\\My Documents" | "\\" | "c:\\" | "oct2000\\*.doc" | "c:\\My Documents\\Letters\\oct2000\\*.doc" | "file.txt" | "c:\\My Documents\\Letters\\file.txt" |
1 2 3 4
8 8 8
| |