Документация JavaScript
| Документация DHTML | Документация Smarty | SVG/VML Графика и JavaScript
| Документация bash |
Глава 3.15. Исполняющая система JScript (продолжение)
3.15.1. Диски: объект Drive
Объект Drive обеспечивает доступ к отдельному диску компьютера. Он может быть создан методом FileSystemObject.GetDrive или получен при итерации коллекции FileSystemObject.Drives. Собственных методов этот объект не имеет.
Свойство | Описание |
---|---|
AvailableSpace | Объем доступного пространства на диске. |
DriveLetter | Буква диска. |
DriveType | Тип диска. |
FileSystem | Тип файловой системы. |
FreeSpace | Объем свободного пространства на диске. |
IsReady | Готовность диска. |
Path | Путь доступа к диску. |
RootFolder | Корневая папка диска. |
SerialNumber | Серийный номер диска. |
ShareName | Сетевое имя диска. |
TotalSize | Общий объем диска. |
VolumeName | Метка тома. |
Свойство AvailableSpace
Синтаксис: объект.AvailableSpace Атрибуты: { DontEnum, DontDelete, ReadOnly }
Свойство AvailableSpace возвращает объем дискового пространства, доступного для пользователя, в байтах. Обычно его значение совпадает со значением свойства FreeSpace; исключение составляют такие файловые системы, как NTFS 5.0, поддерживающие дисковые квоты пользователей. Следующий пример возвращает объем доступного пространства на диске C в килобайтах:
function AvailSpace() { var fso = new ActiveXObject("Scripting.FileSystemObject"); var d = fso.GetDrive("C"); return d.AvailableSpace / 1024; }
Свойство DriveLetter
Синтаксис: объект.DriveLetter Атрибуты: { DontEnum, DontDelete, ReadOnly }
Свойство DriveLetter возвращает букву, идентифицирующую данный диск. Если диск является сетевым и не отображен на логический диск, то возвращается пустая строка. Пример:
var fso = new ActiveXObject("Scripting.FileSystemObject"); var d = fso.GetDrive("C"); var x = d.DriveLetter; // x равно "C"
Свойство DriveType
Синтаксис: объект.DriveType Атрибуты: { DontEnum, DontDelete, ReadOnly }
Свойство DriveType возвращает тип диска согласно следующей таблицы:
0 | Неизвестное устройство. |
1 | Дисковод со сменными дисками. |
2 | Жесткий диск. |
3 | Сетевой диск. |
4 | Компакт диск. |
5 | Виртуальный диск в ОЗУ. |
Пример использования этого свойства был приведен ранее.
Свойство FileSystem
Синтаксис: объект.FileSystem Атрибуты: { DontEnum, DontDelete, ReadOnly }
Свойство FileSystem возвращает тип файловой системы диска согласно следующей таблицы:
"FAT" | Файловая система MS-DOS и Windows 95/98. |
"NTFS" | Файловая система Windows NT. |
"CDFS" | Файловая система компакт-дисков. |
Пример:
var fso = new ActiveXObject("Scripting.FileSystemObject"); var d = fso.GetDrive("C"); var s = d.FileSystem;
Свойство FreeSpace
Синтаксис: объект.FreeSpace Атрибуты: { DontEnum, DontDelete, ReadOnly }
Свойство FreeSpace возвращает объем свободного дискового пространства в байтах. Обычно его значение совпадает со значением свойства AvailableSpace; исключение составляют такие файловые системы, как NTFS 5.0, поддерживающие дисковые квоты пользователей. Следующий пример возвращает объем свободного пространства на диске C в килобайтах:
function AvailSpace() { var fso = new ActiveXObject("Scripting.FileSystemObject"); var d = fso.GetDrive("C"); return d.FreeSpace / 1024; }
Свойство IsReady
Синтаксис: объект.IsReady Атрибуты: { DontEnum, DontDelete, ReadOnly }
Свойство IsReady возвращает true, если в дисководе есть диск, и false в противном случае. Оно имеет смысл только для дисководов со сменными дисками и компакт-дисков. Пример использования этого свойства был приведен ранее.
Свойство Path
Синтаксис: объект.Path Атрибуты: { DontEnum, DontDelete, ReadOnly }
Свойство Path возвращает путь, соответствующий данному диску в виде строки "X:", где X буква, обозначающая данный диск. Пример:
var fso = new ActiveXObject("Scripting.FileSystemObject"); var d = fso.GetDrive("C"); var s = d.Path; // s равно "C:"
Свойство RootFolder
Синтаксис: объект.RootFolder Атрибуты: { DontEnum, DontDelete, ReadOnly }
Свойство RootFolder возвращает объект Folder, соответствующий корневой папке данного диска.
Свойство SerialNumber
Синтаксис: объект.SerialNumber Атрибуты: { DontEnum, DontDelete, ReadOnly }
Свойство SerialNumber возвращает десятичный серийный номер данного диска. Это свойство позволяет проверить, правильный ли диск вставлен в дисковод. Пример:
var fso = new ActiveXObject("Scripting.FileSystemObject"); var d = fso.GetDrive("A"); var n = 959814235; // серийный номер диска, который должен быть в дисководе A if (d.SerialNumber == n)
Свойство ShareName
Синтаксис: объект.ShareName Атрибуты: { DontEnum, DontDelete, ReadOnly }
Свойство ShareName возвращает сетевое имя данного диска. Если диск не является сетевым, то возвращается пустая строка. Пример использования этого свойства был приведен ранее.
Свойство TotalSize
Синтаксис: объект.TotalSize Атрибуты: { DontEnum, DontDelete, ReadOnly }
Свойство TotalSize возвращает полный объем данного диска в байтах. Следующий пример возвращает объем диска C в килобайтах:
function AvailSpace() { var fso = new ActiveXObject("Scripting.FileSystemObject"); var d = fso.GetDrive("C"); return d.TotalSize / 1024; }
Свойство VolumeName
Синтаксис: объект.VoulmeName Атрибуты: { DontEnum, DontDelete }
Свойство VolumeName возвращает или устанавливает метку тома для данного диска. Это единственное свойство объекта Drive, доступное для изменения сценарием. Пример использования этого свойства был приведен ранее.
3.15.2. Файлы: объект File
Объект File обеспечивает доступ к отдельному файлу. Он может быть создан методом FileSystemObject.GetFile или получен при просмотре коллекции Folder.Files.
Свойство | Описание |
---|---|
Attributes | Атрибуты файла. |
DateCreated | Дата и время создания файла. |
DateLastAccessed | Дата и время последнего обращения к файлу. |
DateLastModified | Дата и время последнего изменения файла. |
Drive | Буква диска, на котором находится файл. |
Name | Имя файла. |
ParentFolder | Объект Folder папки, в которой находится файл. |
Path | Путь доступа к файлу. |
ShortName | Короткое имя файла. |
ShortPath | Короткое имя пути доступа к файлу. |
Size | Размер файла. |
Type | Тип файла. |
Метод | Описание |
---|---|
Copy | Копирует файл. |
Delete | Удаляет файл. |
Move | Перемещает файл. |
OpenAsTextStream | Открывает файл как текстовый. |
Свойство Attributes
Синтаксис: объект.Attributes Атрибуты: { DontEnum, DontDelete }
Свойство Attributes позволяет читать атрибуты данного файла и изменять некоторые из них. Его значением является логическая комбинация следующих битовых флагов:
Бит | Атрибут | Можно изменять |
---|---|---|
0 | Обычный файл (все атрибуты сброшены). | |
1 | Файл только для чтения. | Да |
2 | Скрытый файл. | Да |
4 | Системный файл. | Да |
8 | Метка дискового тома. | Нет |
16 | Папка или каталог. | Нет |
32 | Файл был изменен после архивирования. | Да |
64 | Ссылка или сокращение. | Нет |
128 | Сжатый файл. | Нет |
Следующий пример показывает, как сбросить атрибут файла "только для чтения":
var fso = new ActiveXObject("Scripting.FileSystemObject"); var f = fso.GetFile("c:\\test.txt"); f.Attributes = f.Attributes - 1;
Свойство DateCreated
Синтаксис: объект.DateCreated Атрибуты: { DontEnum, DontDelete, ReadOnly }
Свойство DateCreated возвращает дату и время создания данного файла. Пример: следующий сценарий
var fso = new ActiveXObject("Scripting.FileSystemObject"); var f = fso.GetFile("c:\\config.sys"); document.write(f.DateCreated);
выведет на экран обозревателя текст следующего вида: Fri Jul 7 01:04:53 UTC+0600 2000.
Примечание. Значение этого свойства имеет нестандартный тип VT_DATE стандарта COM. При присваивании строковой переменной оно автоматически преобразуется в строку указанного вида.
Свойство DateLastAccessed
Синтаксис: объект.DateLastAccessed Атрибуты: { DontEnum, DontDelete, ReadOnly }
Свойство DateLastAccessed возвращает дату и время последнего открытия данного файла для чтения. Пример: следующий сценарий
var fso = new ActiveXObject("Scripting.FileSystemObject"); var f = fso.GetFile("c:\\config.sys"); document.write(f.DateLastAccessed);
выведет на экран обозревателя текст следующего вида: Fri Jul 7 01:04:53 UTC+0600 2000.
Примечание. Значение этого свойства имеет нестандартный тип VT_DATE стандарта COM. При присваивании строковой переменной оно автоматически преобразуется в строку указанного вида.
Свойство DateLastModified
Синтаксис: объект.DateLastModified Атрибуты: { DontEnum, DontDelete, ReadOnly }
Свойство DateLastModified возвращает дату и время последней модификации данного файла. Пример: следующий сценарий
var fso = new ActiveXObject("Scripting.FileSystemObject"); var f = fso.GetFile("c:\\config.sys"); document.write(f.DateLastModified);
выведет на экран обозревателя текст следующего вида: Fri Jul 7 01:04:53 UTC+0600 2000.
Примечание. Значение этого свойства имеет нестандартный тип VT_DATE стандарта COM. При присваивании строковой переменной оно автоматически преобразуется в строку указанного вида.
Свойство Drive
Синтаксис: объект.Drive Атрибуты: { DontEnum, DontDelete, ReadOnly }
Свойство Drive возвращает букву, идентифицирующую диск, на котором находится данный файл. Если диск является сетевым и не отображен на логический диск, то возвращается пустая строка. Пример:
var fso = new ActiveXObject("Scripting.FileSystemObject"); var f = fso.GetFile("c:\\config.sys"); var x = f.Drive; // x равно "C"
Свойство Name
Синтаксис: объект.Name Атрибуты: { DontEnum, DontDelete }
Свойство Name позволяет читать и изменять имя данного файла. Пример:
var fso = new ActiveXObject("Scripting.FileSystemObject"); var f = fso.GetFile("c:\\config.sys"); var x = f.Name; // x равно "CONFIG.SYS"
Свойство ParentFolder
Синтаксис: fso.ParentFolder Атрибуты: { DontEnum, DontDelete, ReadOnly }
Метод ParentFolder возвращает объект Folder, соответствующий папке, содержащей данный файл.Пример:
var fso = new ActiveXObject("Scripting.FileSystemObject"); var f = fso.GetFile("c:\\config.sys"); var p = f.ParentFolder; var x = p.Path; // x равно "C:\\"
Свойство Path
Синтаксис: объект.Path Атрибуты: { DontEnum, DontDelete, ReadOnly }
Свойство Path возвращает путь доступа к данному файлу. Пример:
var fso = new ActiveXObject("Scripting.FileSystemObject"); var f = fso.GetFile("c:\\config.sys"); var x = f.Path; // x равно "C:\\CONFIG.SYS"
Свойство ShortName
Синтаксис: объект.ShortName Атрибуты: { DontEnum, DontDelete, ReadOnly }
Свойство ShortName возвращает имя данного файла в нотации MS-DOS (8 символов на имя файла и 3 символа на расширение). Пример:
var fso = new ActiveXObject("Scripting.FileSystemObject"); var f = fso.GetFile("C:\\Multimedia Files\\Graphics\\Animations\\Airpane.gif"); var x = f.ShortName; // x равно "AIRPLANE.GIF"
Свойство ShortPath
Синтаксис: объект.ShortPath Атрибуты: { DontEnum, DontDelete, ReadOnly }
Свойство ShortPath возвращает путь доступа к данному файлу в нотации MS-DOS (8 символов на имя файла и 3 символа на расширение). Пример:
var fso = new ActiveXObject("Scripting.FileSystemObject"); var f = fso.GetFile("C:\\Multimedia Files\\Graphics\\Animations\\Airpane.gif"); var x = f.ShortPath; // x равно "C:\\MULTIM~1\\GRAPHICS\\ANIMAT~1\\AIRPLANE.GIF"
Свойство Size
Синтаксис: объект.Size Атрибуты: { DontEnum, DontDelete, ReadOnly }
Свойство Size возвращает размер данного файла в байтах. Пример:
var fso = new ActiveXObject("Scripting.FileSystemObject"); var f = fso.GetFile("c:\\config.sys"); var x = f.Size;
Свойство Type
Синтаксис: объект.Type Атрибуты: { DontEnum, DontDelete, ReadOnly }
Свойство Type возвращает тип данного файла. Тип файла это текстовая строка, соответствующая расширению файла и хранящаяся в системном реестре. Пример:
var fso = new ActiveXObject("Scripting.FileSystemObject"); var f = fso.GetFile("C:\\Multimedia Files\\Graphics\\Animations\\Airpane.gif"); var x = f.Type; // x равно "GIF Image"
Метод Copy
Синтаксис: объект.Copy(цель [, флаг]?) Аргументы: цель строковое выражение флаг логическое значение
Метод Copy копирует данный файл. Строка цель задает имя результирующего файла или папки, а необязательный аргумент флаг указывает, следует ли заменять при копировании существующие файлы (по умолчанию он равен true, т. е. существующие файлы заменяются).
Если цель заканчивается символом "\", то цель считается именем папки, в которую копируются исходный файл. В остальных случаях цель считается именем результирующего файла. Сам процесс копирования происходит так:
- если файла с именем цель нет, то производится копирование файла;
- если файл цель существует и флаг равен false, то метод завершается ошибкой, иначе делается попытка копирования источника поверх цели; при этом независимо от значения флага, попытка замены существующего файла с атрибутом "только для чтения" завершается ошибкой;
- если цель является каталогом, то метод завершается ошибкой.
Пример: следующий сценарий копирует файл CONFIS.SYS в папку d:\Temp.
var fso = new ActiveXObject("Scripting.FileSystemObject"); var f = fso.GetFile("c:\\config.sys"); f.Copy("d:\\Temp");
Ср. метод FileSystemObject.CopyFile.
Метод Delete
Синтаксис: объект.Delete(флаг?) Аргументы: флаг логическое выражение
Метод Delete удаляет данный файл. При этом необязательный аргумент флаг указывает, следует ли удалять файл, имеющий атрибут "только для чтения" (по умолчанию он равен false, т. е. такие файлы не удаляются). Пример:
var fso = new ActiveXObject("Scripting.FileSystemObject"); var f = fso.GetFile("C:\\Multimedia Files\\Graphics\\Animations\\Airpane.gif"); f.Delete(true);
Ср. метод FileSystemObject.DeleteFile.
Метод Move
Синтаксис: объект.Move(цель) Аргументы: цель строковое выражение
Метод Move перемещает данный файл в другое место. При этом строка цель задает имя результирующего файла или папки.
Если цель заканчивается символом "\", то цель считается именем папки, в которую перемещается исходный файл. В остальных случаях цель считается именем результирующего файла. Сам процесс перемещения происходит так:
- если файла с именем цель нет, то производится перемещение файла;
- если файл цель существует, то метод завершается ошибкой;
- если цель является каталогом, то метод завершается ошибкой.
Пример: следующий сценарий перемещает файл CONFIS.SYS в папку d:\Temp (но делать этого не нужно!).
var fso = new ActiveXObject("Scripting.FileSystemObject"); var f = fso.GetFile("c:\\config.sys"); f.Move("d:\\Temp");
Ср. метод FileSystemObject.MoveFile.
Метод OpenAsTextStream
Синтаксис: объект.OpenAsTextStream(режим? [, формат]?) Аргументы: режим, формат числовые выражения Результат: новый объект TextStream
Метод OpenTextFile открывает данный файл как текстовый. Он полностью аналогичен методу FileSystemObject.OpenTextFile.
3.15.3. Папки: объект Folder
Объект Folder обеспечивает доступ к отдельному папке. Он может быть создан методом FileSystemObject.GetFolder или получен чтением свойств Drive.RootFolder и File.ParentFolder.
Свойство | Описание |
---|---|
Attributes | Атрибуты папки. |
DateCreated | Дата и время создания папки. |
DateLastAccessed | Дата и время последнего обращения к папке. |
DateLastModified | Дата и время последнего изменения папки. |
Drive | Буква диска, на котором находится папка. |
Files | Коллекция файлов данной папки. |
IsRootFolder | Проверяет, является ли папка корневой. |
Name | Имя папки. |
ParentFolder | Объект Folder папки, в которой находится папка. |
Path | Путь доступа к папке. |
ShortName | Короткое имя папки. |
ShortPath | Короткое имя пути доступа к папке. |
Size | Размер папки с подпапками. |
SubFolders | Коллекция подпапок данной папки. |
Type | Тип папки. |
Метод | Описание |
---|---|
Copy | Копирует папку. |
CreateTextFile | Создает текстовый файл. |
Delete | Удаляет папку. |
Move | Перемещает папку. |
Свойство Attributes
Синтаксис: объект.Attributes Атрибуты: { DontEnum, DontDelete }
Свойство Attributes позволяет читать атрибуты данной папки и изменять некоторые из них. Полностью аналогично свойству File.Attributes.
Свойство DateCreated
Синтаксис: объект.DateCreated Атрибуты: { DontEnum, DontDelete, ReadOnly }
Свойство DateCreated возвращает дату и время создания данной папки. Пример: следующий сценарий
var fso = new ActiveXObject("Scripting.FileSystemObject"); var f = fso.GetFolder("c:\\Program Files"); document.write(f.DateCreated);
выведет на экран обозревателя текст следующего вида: Mon Jul 12 20:43:58 UTC+0600 1999.
Примечание. Значение этого свойства имеет нестандартный тип VT_DATE стандарта COM. При присваивании строковой переменной оно автоматически преобразуется в строку указанного вида.
Свойство DateLastAccessed
Синтаксис: объект.DateLastAccessed Атрибуты: { DontEnum, DontDelete, ReadOnly }
Свойство DateLastAccessed возвращает дату и время последнего доступа к данной папке. Пример: следующий сценарий
var fso = new ActiveXObject("Scripting.FileSystemObject"); var f = fso.GetFolder("c:\\Program Files"); document.write(f.DateLastAccessed);
выведет на экран обозревателя текст следующего вида: Mon Jul 12 20:43:58 UTC+0600 1999.
Примечание. Значение этого свойства имеет нестандартный тип VT_DATE стандарта COM. При присваивании строковой переменной оно автоматически преобразуется в строку указанного вида.
Свойство DateLastModified
Синтаксис: объект.DateLastModified Атрибуты: { DontEnum, DontDelete, ReadOnly }
Свойство DateLastModified возвращает дату и время последней модификации данной папки. Пример: следующий сценарий
var fso = new ActiveXObject("Scripting.FileSystemObject"); var f = fso.GetFolder("c:\\Program Files"); document.write(f.DateLastModified);
выведет на экран обозревателя текст следующего вида: Mon Jul 12 20:43:58 UTC+0600 1999.
Примечание. Значение этого свойства имеет нестандартный тип VT_DATE стандарта COM. При присваивании строковой переменной оно автоматически преобразуется в строку указанного вида.
Свойство Drive
Синтаксис: объект.Drive Атрибуты: { DontEnum, DontDelete, ReadOnly }
Свойство Drive возвращает букву, идентифицирующую диск, на котором находится данная папка. Если диск является сетевым и не отображен на логический диск, то возвращается пустая строка. Пример:
var fso = new ActiveXObject("Scripting.FileSystemObject"); var f = fso.GetFolder("c:\\Program Files"); var x = f.Drive; // x равно "C"
Свойство Files
Синтаксис: объект.Files Атрибуты: { DontEnum, DontDelete, ReadOnly }
Свойство Files возвращает коллекцию объектов File, соответствующих всем файлам, содержащимся в данной папке, включая скрытые и системные файлы. Для просмотра этой коллекции следует пользоваться объектом Enumerator.
Пример: следующий сценарий выведет на экран список всех файлов корневого каталога диска C.
function ShowFileList(folderspec) { var fso = new ActiveXObject("Scripting.FileSystemObject"); var f = fso.GetFolder(folderspec); var fc = new Enumerator(f.Files); var s = ""; for (; !fc.atEnd(); fc.moveNext()) s += fc.item() + "<br>"; return s; } document.write(ShowFileList("c:\\"));
Свойство IsRootFolder
Синтаксис: объект.IsRootFolder Атрибуты: { DontEnum, DontDelete, ReadOnly }
Свойство IsRootFolder возвращает true, если данная папка является корневой, и false в противном случае.
Свойство Name
Синтаксис: объект.Name Атрибуты: { DontEnum, DontDelete }
Свойство Name позволяет читать и изменять имя данной папки. Пример:
var fso = new ActiveXObject("Scripting.FileSystemObject"); var f = fso.GetFolder("c:\\Program Files"); var x = f.Name; // x равно "Program Files"
Свойство ParentFolder
Синтаксис: fso.ParentFolder Атрибуты: { DontEnum, DontDelete, ReadOnly }
Метод ParentFolder возвращает объект Folder, соответствующий папке, содержащей данную папку. Если папка является корневой, то возвращается null. Пример:
var fso = new ActiveXObject("Scripting.FileSystemObject"); var f = fso.GetFolder("c:\\Program Files"); var p = f.ParentFolder; var x = p.Path; // x равно "C:\\"
Свойство Path
Синтаксис: объект.Path Атрибуты: { DontEnum, DontDelete, ReadOnly }
Свойство Path возвращает путь доступа к данной папке. Пример:
var fso = new ActiveXObject("Scripting.FileSystemObject"); var f = fso.GetFolder("c:\\Program Files"); var x = f.Path; // x равно "C:\\Program Files"
Свойство ShortName
Синтаксис: объект.ShortName Атрибуты: { DontEnum, DontDelete, ReadOnly }
Свойство ShortName возвращает имя данной папки в нотации MS-DOS (8 символов на имя файла и 3 символа на расширение). Пример:
var fso = new ActiveXObject("Scripting.FileSystemObject"); var f = fso.GetFolder("C:\\Multimedia Files\\Graphics\\Animations"); var x = f.ShortName; // x равно "ANIMAT~1"
Свойство ShortPath
Синтаксис: объект.ShortPath Атрибуты: { DontEnum, DontDelete, ReadOnly }
Свойство ShortPath возвращает путь доступа к данной папке в нотации MS-DOS (8 символов на имя файла и 3 символа на расширение). Пример:
var fso = new ActiveXObject("Scripting.FileSystemObject"); var f = fso.GetFolder("C:\\Multimedia Files\\Graphics\\Animations"); var x = f.ShortPath; // x равно "C:\\MULTIM~1\\GRAPHICS\\ANIMAT~1"
Свойство Size
Синтаксис: объект.Size Атрибуты: { DontEnum, DontDelete, ReadOnly }
Свойство Size возвращает суммарный размер в байтах всех файлов, содержащихся в данной папке и ее подпапках. Пример:
var fso = new ActiveXObject("Scripting.FileSystemObject"); var f = fso.GetFolder("c:\\"); var x = f.Size;
Свойство SubFolders
Синтаксис: объект.SubFolders Атрибуты: { DontEnum, DontDelete, ReadOnly }
Свойство SubFolders возвращает коллекцию объектов Folder, соответствующих всем папкам, содержащимся в данной папке, включая скрытые и системные папки. Для просмотра этой коллекции следует пользоваться объектом Enumerator.
Пример: следующий сценарий выведет на экран список всех подпапок корневого каталога диска C.
function ShowFileList(folderspec) { var fso = new ActiveXObject("Scripting.FileSystemObject"); var f = fso.GetFolder(folderspec); var fc = new Enumerator(f.SubFolders); var s = ""; for (; !fc.atEnd(); fc.moveNext()) s += fc.item() + "<br>"; return s; } document.write(ShowFileList("c:\\"));
Свойство Type
Синтаксис: объект.Type Атрибуты: { DontEnum, DontDelete, ReadOnly }
Свойство Type возвращает тип данной папки. Тип это текстовая строка, соответствующая расширению файла и хранящаяся в системном реестре. Пример:
var fso = new ActiveXObject("Scripting.FileSystemObject"); var f = fso.GetFolder("C:\\Multimedia Files\\Graphics\\Animations"); var x = f.Type; // x равно "Папка с файлами" (в русифицированной Windows)
Метод Copy
Синтаксис: объект.Copy(цель [, флаг]?) Аргументы: цель строковое выражение флаг логическое значение
Метод Copy полностью копирует данную папку. Строка цель задает имя результирующей папки, а необязательный аргумент флаг указывает, следует ли заменять при копировании существующие файлы (по умолчанию он равен true, т. е. существующие файлы заменяются). Сам процесс копирования происходит так:
- если папки с именем цель нет, то производится копирование папки;
- если папка цель существует и флаг равен false, то метод завершается ошибкой, иначе делается попытка копирования источника поверх цели; при этом независимо от значения флага, попытка замены существующего файла с атрибутом "только для чтения" завершается ошибкой.
Пример: следующий сценарий копирует папку c:\ в папку d:\Temp.
var fso = new ActiveXObject("Scripting.FileSystemObject"); var f = fso.GetFolder("c:\\"); f.Copy("d:\\Temp");
Ср. метод FileSystemObject.CopyFolder.
Метод CreateTextFile
Синтаксис: объект.CreateTextFile(имя [[, флаг]?, unicode]?) Аргументы: имя строковое выражение флаг, unicode логические выражения Результат: новый объект TextStream
Метод CreateTextFile создает текстовый файл с заданным именем. Он полностью аналогичен методу FileSystemObject.CreateTextFile.
Метод Delete
Синтаксис: объект.Delete(флаг?) Аргументы: флаг логическое выражение
Метод Delete удаляет данную папку. При этом необязательный аргумент флаг указывает, следует ли удалять файлы, имеющие атрибут "только для чтения" (по умолчанию он равен false, т. е. такие файлы не удаляются). Папка удаляется независимо от того, пуста оно или нет. Пример:
var fso = new ActiveXObject("Scripting.FileSystemObject"); var f = fso.GetFolder("C:\\Multimedia Files\\Graphics\\Animations"); f.Delete(true);
Ср. метод FileSystemObject.DeleteFolder.
Метод Move
Синтаксис: объект.Move(цель) Аргументы: цель строковое выражение
Метод Move перемещает данную папку в другое место. При этом строка цель задает имя результирующей папки. Сам процесс перемещения происходит так:
- если папки с именем цель нет, то производится перемещение папки;
- если папка цель существует, то метод завершается ошибкой.
Пример: следующий сценарий перемещает папку c:\ в папку d:\Temp (но делать этого не нужно!).
var fso = new ActiveXObject("Scripting.FileSystemObject"); var f = fso.GetFile("c:\\"); f.Move("d:\\Temp");
Ср. метод FileSystemObject.MoveFolder.
3.15.4. Текстовые файлы: объект TextStream
Объект TextStream предназначен для работы с текстовыми файлами. Он может быть создан методами FileSystemObject.CreateTextFile, FileSystemObject.OpenTextFile, Folder.CreateTextFile и File.OpenAsTextStream.
О работе с текстовыми файлами см. также WDH+: ANSI и Unicode.
Свойство | Описание |
---|---|
AtEndOfLine | Проверяет конец строки. |
AtEndOfStream | Проверяет конец файла. |
Column | Номер текущего символа в строке. |
Line | Номер текущей строки. |
Метод | Описание |
---|---|
Close | Закрывает файл. |
Read | Читает заданное количество символов. |
ReadAll | Читает весь файл. |
ReadLine | Читает строку. |
Skip | Пропускает заданное количество символов. |
SkipLine | Пропускает строку. |
Write | Выводит строку. |
WriteBlankLines | Выводит пустые строки. |
WriteLine | Выводит строку и символ конца строки. |
Свойство AtEndOfLine
Синтаксис: объект.AtEndOfLine Атрибуты: { DontEnum, DontDelete, ReadOnly }
Свойство AtEndOfLine возвращает true, если следующим символом файла является символ перевода строки, и false в противном случае. Этим свойством обладают только файлы, открытые для чтения. Следующий пример показывает, как можно считать первую строку текстового файла:
var fso = new ActiveXObject("Scripting.FileSystemObject"); var f = fso.OpenTextFile("c:\\test.txt", 1, false); var s = ""; while (!f.AtEndOfLine) s += f.Read(1); f.Close();
Свойство AtEndOfStream
Синтаксис: объект.AtEndOfStream Атрибуты: { DontEnum, DontDelete, ReadOnly }
Свойство AtEndOfStream возвращает true, если достигнут конец файла, и false в противном случае. Этим свойством обладают только файлы, открытые для чтения. Следующий пример показывает, как можно считать весь текстовый файл в строку:
var fso = new ActiveXObject("Scripting.FileSystemObject"); var f = fso.OpenTextFile("c:\\test.txt", 1, false); var s = ""; while (!f.AtEndOfStream) s += f.ReadLine(); f.Close();
Свойство Column
Синтаксис: объект.Column Атрибуты: { DontEnum, DontDelete, ReadOnly }
Свойство Column возвращает номер текущего символа в строке, считая с 1. Пример:
var fso = new ActiveXObject("Scripting.FileSystemObject"); var f = fso.OpenTextFile("c:\\test.txt", 1, false); var s = f.ReadLine(); var n = f.Column;
Свойство Line
Синтаксис: объект.Line Атрибуты: { DontEnum, DontDelete, ReadOnly }
Свойство Line возвращает номер текущей строки файла, считая с 1. Пример:
var fso = new ActiveXObject("Scripting.FileSystemObject"); var f = fso.OpenTextFile("c:\\test.txt", 1, false); var s = f.ReadAll(); var n = f.Line;
Метод Close
Синтаксис: объект.Close()
Метод Close закрывает данный файл. Примеры его использования приведены выше.
Метод Read
Синтаксис: объект.Read(число) Аргументы: число числовое выражение Результат: строковое значение
Метод Read читает из файла заданное число символов и возвращает их в новой строке. Пример его использования приведен выше.
Метод ReadAll
Синтаксис: объект.ReadAll() Результат: строковое значение
Метод ReadAll считывает файл полностью и возвращает результат в новой строке. Пример его использования приведен выше. Этим методом можно пользоваться только в тех случаях, когда размер файла невелик. В противном случае следует пользоваться последовательным обращением к методу ReadLine.
Метод ReadLine
Синтаксис: объект.ReadLine() Результат: строковое значение
Метод ReadLine считывает очередную строку из файла и возвращает результат в новой строке. Пример его использования приведен выше. Чтение производится до символа перевода строки, но не включая его.
Метод Skip
Синтаксис: объект.Skip(число) Аргументы: число числовое выражение
Метод Skip считывает из файла заданное число символов, но не возвращает их. Используется для пропуска ненужного содержимого файла. Следующий пример пропускает при чтении первую строку файла:
var fso = new ActiveXObject("Scripting.FileSystemObject"); var f = fso.OpenTextFile("c:\\test.txt", 1, false); while (!f.AtEndOfLine) f.Skip(1);
Метод SkipLine
Синтаксис: объект.SkipLine()
Метод SkipLine считывает из файла очередную строку, но не возвращает ее. Используется для пропуска ненужного содержимого файла. Следующий пример пропускает при чтении первую строку файла:
var fso = new ActiveXObject("Scripting.FileSystemObject"); var f = fso.OpenTextFile("c:\\test.txt", 1, false); f.SkipLine();
Метод Write
Синтаксис: объект.Write(строка) Аргументы: строка строковое выражение
Метод Write выводит в файл заданную строку. Символ перевода строки после строки не выводится, для этого нужно пользоваться методом WriteLine. Пример:
var fso = new ActiveXObject("Scripting.FileSystemObject"); var f = fso.OpenTextFile("c:\\test.txt", 2, true); f.Write("Тестовая строка"); f.Close();
Метод WriteBlankLines
Синтаксис: объект.WriteBlankLines(число) Аргументы: число числовое выражение
Метод WriteBlankLines выводит в файл заданное число символов перевода строки. Пример:
var fso = new ActiveXObject("Scripting.FileSystemObject"); var f = fso.OpenTextFile("c:\\test.txt", 2, false); f.WriteBlankLines(10); f.Close()
Метод WriteLine
Синтаксис: объект.Write(строка?) Аргументы: строка строковое выражение
Метод Write выводит в файл заданную строку и символ перевода строки после нее. Если строка опущена, то выводится только символ перевода строки. Пример:
var fso = new ActiveXObject("Scripting.FileSystemObject"); var f = fso.OpenTextFile("c:\\test.txt", 2, true); f.WriteLine("Тестовая строка"); f.Close();