FileSystemObject Продолжение

Объект Folder. Методы.

Методы Описание
Copy Синтаксис:
Copy(Destination, Overwrite)
Назначение: копирует каталог в указанное место.
Параметры:
Destination - строка, путь (куда копировать).
Overwrite - необязательный, булево (число). Заменять каталог, если он существует (True), или нет (False)
Пример
 
var fso, f; fso = new ActiveXObject("Scripting.FileSystemObject"); f = fso.CreateTextFile("c:\\testfile.txt", true); f.WriteLine("This is a test."); f.Close(); f = fso.GetFile("c:\\testfile.txt"); f.Copy("c:\\windows\\desktop\\test2.txt");

 
CreateTextFile Синтаксис:
CreateTextFile(Filename, Overwrite, Unicode)
Назначение: создаёт новый текстовый файл и возвращает объект "TextStream", указывающий на него.
Параметры:
Filename - строка, имя файла.
Overwrite - необязательный, булево (число). Перезаписывать файл, если он существует (True), или нет (False). По умолчанию - False. Если указано False и файл существует - произойдёт ошибка.
Unicode - необязательный, булево (число). Файл в формате Unicode (True), или ASCII (False). По умолчанию - False.
Пример
 
var fso = new ActiveXObject("Scripting.FileSystemObject"); var a = fso.CreateTextFile("c:\\testfile.txt", true); a.WriteLine("This is a test."); a.Close();

 
Delete Delete(Force)
Назначение: удаляет каталог со всем содержимым.
Параметры:
Force - необязательный, булево (число). Удалять каталог,
если он имеет атрибут "только для чтения" (True), или нет (False).
Пример
 
var fso, f; fso = new ActiveXObject("Scripting.FileSystemObject"); f = fso.CreateTextFile("c:\\testfile.txt", true); f.WriteLine("This is a test."); f.Close(); f = fso.GetFile("c:\\testfile.txt"); f.Delete();

 
Move Move(Destination)
Назначение: перемещает каталог в указанное место.
Параметры:
Destination - строка, путь (куда перемещать).
Пример
 
Set FSO = CreateObject("Scripting.FileSystemObject") Set Folder = FSO.GetFolder("D:\Job\Site") Folder.Move "D:\"

 
OpenAsTextStream Синтаксис:
OpenAsTextStream(Iomode,Format)
Назначение:
Открывает текстовый файл и возвращает объект "TextStream", указывающий на него.
Параметры:
Iomode - необязательный, число. Возможные значения:
  • 1 - Открыть файл только для чтения.
  • 2 - Открыть файл для записи. Если файл уже существовал, его содержимое теряется.
  • 8 - Открыть файл для добавления. Если файл уже существовал, информация будет дописываться в конец файла.
Format - необязательный, число. Возможные значения:
  • -2 - Открыть файл в формате, используемом системой по умолчанию.
  • -1 - Открыть файл в формате Unicode.
  • 0 - Открыть файл в формате ASCII (по умолчанию).

Пример
 
function TextStreamTest( ) { var fso, f, ts, s; var ForReading = 1, ForWriting = 2, ForAppending = 8; var TristateUseDefault = -2, TristateTrue = -1, TristateFalse = 0; fso = new ActiveXObject("Scripting.FileSystemObject"); fso.CreateTextFile( "test1.txt" ); // Create a file. f = fso.GetFile("test1.txt"); ts = f.OpenAsTextStream(ForWriting, TristateUseDefault); ts.Write( "Hello World" ); ts.Close( ); ts = f.OpenAsTextStream(ForReading, TristateUseDefault); s = ts.ReadLine( ); ts.Close( ); return(s); }

 

Объект Drive. Свойства

Свойства Описание
AvailableSpace Возвращаемое значение: число - количество доступного для пользователя места на диске в байтах, только чтение.
Аргумент - объект DRIVE.

Пример
 
function ShowAvailableSpace(drvPath) { var fso, d, s; fso = new ActiveXObject("Scripting.FileSystemObject"); d = fso.GetDrive(fso.GetDriveName(drvPath)); s = "Available Space: " + d.AvailableSpace/1024 + " Kbytes"; return(s); }

 
DriveLetter Возвращает символ физического (логического) диска или сетевого ресурса.
Только для чтения.
Свойство DriveLetter возвращает строку нулевой длины (""), если указанный диск не ассоциируется с символом диска.
Аргумент - объект Drive.
Пример:
 
function ShowDriveLetter(drvPath) { var fso, d, s; fso = new ActiveXObject("Scripting.FileSystemObject"); d = fso.GetDrive(fso.GetDriveName(drvPath)); s = "Drive " + d.DriveLetter.toUpperCase( ) + ": - "; return(s); }

 
DriveType Возвращаемое значение: число - определяет тип ресурса. Возможные значения:
  • 0 - неизвестное устройство.
  • 1 - устройство со сменным носителем.
  • 2 - жёсткий диск.
  • 3 - сетевой диск.
  • 4 - CD-ROM.
  • 5 - RAM-диск.
Только чтение.
Аргумент - объект Drive.
Пример:
 
function ShowDriveType(drvpath) { var fso, d, s, t; fso = new ActiveXObject("Scripting.FileSystemObject"); d = fso.GetDrive(drvpath); switch (d.DriveType) { case 0: t = "Unknown"; break; case 1: t = "Removable"; break; case 2: t = "Fixed"; break; case 3: t = "Network"; break; case 4: t = "CD-ROM"; break; case 5: t = "RAM Disk"; break; } s = "Drive " + d.DriveLetter + ": - " + t; return(s); }

 
FileSystem Возвращаемое значение: строка - тип файловой системы (FAT, NTFS или CDFS). Только чтение.
Аргумент - объект Drive.
Пример:
 
function ShowFileSystemType(drvPath) { var fso,d, s; fso = new ActiveXObject("Scripting.FileSystemObject"); d = fso.GetDrive(drvPath); s = d.FileSystem; return(s); }

 
FreeSpace Возвращаемое значение: число - количество свободного места на диске в байтах.
Только чтение
Аргумент - объект Drive.
Пример:
 
function ShowFreeSpace(drvPath) { var fso, d, s; fso = new ActiveXObject("Scripting.FileSystemObject"); d = fso.GetDrive(fso.GetDriveName(drvPath)); s = "Drive " + drvPath.toUpperCase( ) + " - "; s += d.VolumeName + "\n"; s += "Free Space: " + d.FreeSpace/1024 + " Kbytes"; return(s); }

 
IsReady Возвращаемое значение: булево (число) - True, если устройство готово, иначе - False.
Актуально для устройства со сменным носителем или CD-ROM. Только чтение
Аргумент - объект Drive.
Пример:
 
function ShowDriveReady(drvpath) { var fso, d, s; fso = new ActiveXObject("Scripting.FileSystemObject") d = fso.GetDrive(drvpath) if (d.IsReady) s = "Drive is Ready."; else s = "Drive is not Ready."; return(s); }

 
Path Возвращаемое значение: полный путь к файлу. Только чтение.
Аргумент: объект FILE, FOLDER или Drive.
Пример:
 
function ShowFilePath(filespec) { var fso, f, s; fso = new ActiveXObject("Scripting.FileSystemObject"); f = fso.GetFile(filespec); s = f.Path.toUpperCase(); return(s); }

 
RootFolder Возвращаемое значение: объект "Folder", соответствующий корневому каталогу диска. Только чтение.
Аргумент: объект Drive.
Пример:
 
function GetRootFolder(drv) { var fso,d; fso = new ActiveXObject("Scripting.FileSystemObject"); if (fso.DriveExists(drv)) { d = fso.GetDrive(drv); return(d.RootFolder); } else return(false); }

 
SerialNumber
Возвращаемое значение: число - десятичный серийный номер диска. Только чтение.
Аргумент: объект Drive.
Пример:
 
function GetSerialNumber(drv) { var fso,d; fso = new ActiveXObject("Scripting.FileSystemObject"); if (fso.DriveExists(drv)) { d = fso.GetDrive(drv); return(d.SerialNumber); } else return(false); } WScript.Echo(GetSerialNumber("c:"));

 
ShareName Возвращаемое значение: строка - сетевое имя диска, если диск сетевой (иначе - пустая строка). Только чтение.
Аргумент: объект Drive.
Пример:
 
function ShowDriveInfo(drvpath) { var fso, d, s; fso = new ActiveXObject("Scripting.FileSystemObject"); d = fso.GetDrive(fso.GetDriveName(fso.GetAbsolutePathName(drvpath))); s = "Drive " + d.DriveLetter + ": - " + d.ShareName; return(s); }

 
TotalSize Возвращаемое значение: число - общий объём диска в байтах. Только чтение.
Аргумент: объект Drive.
Пример:
 
function SpaceReport(drvPath) { var fso, d, s; fso = new ActiveXObject("Scripting.FileSystemObject"); d = fso.GetDrive(fso.GetDriveName(drvPath)); s = "Drive " + drvPath + " - "; s += d.VolumeName; s += " Total Space: "+ d.TotalSize/1024 + " Kbytes "; s += " Free Space: " + d.FreeSpace/1024 + " Kbytes"; return(s); }

 
VolumeName Возвращаемое значение: строка - метка тома диска.
Аргумент: объект Drive.
Пример:
 
function ShowVolumeName(drvPath) { var fso, d, s; fso = new ActiveXObject("Scripting.FileSystemObject"); d = fso.GetDrive(fso.GetDriveName(drvPath)); s = "Drive " + drvPath + " - " + d.VolumeName; return(s); }

 

Объект TextStream. Свойства.

Свойства Описание
AtEndOfLine Возвращаемое значение: содержит True, если указатель достиг конца строки и False в противном случае. Работает только если файл открыт для чтения. Только чтение.
Аргумент - имя TextStream объекта.
Пример:
 
function GetALine(filespec) { var fso, a, s, ForReading; ForReading = 1, s = ""; fso = new ActiveXObject("Scripting.FileSystemObject"); a = fso.OpenTextFile(filespec, ForReading, false); while (!a.AtEndOfLine) { s += a.Read(1); } a.Close( ); return(s); }

 
AtEndOfStream Возвращаемое значение: содержит True, если указатель достиг конца файла и False в противном случае.
Работает только если файл открыт для чтения. Только чтение.
Аргумент - имя TextStream объекта.
Пример:
 
function GetALine(filespec) { var fso, f, s, ForReading; ForReading = 1, s = ""; fso = new ActiveXObject("Scripting.FileSystemObject"); f = fso.OpenTextFile(filespec, ForReading, false); while (!f.AtEndOfStream) s += f.ReadLine( ); f.Close( ); return(s); }

 
Column Возвращаемое значение: содержит номер колонки текущего символа файла. Только чтение.
Аргумент - имя TextStream объекта.
Пример
 
Set FSO = CreateObject("Scripting.FileSystemObject") Set File = FSO.GetFile("C:\boot.ini") Set TextStream = File.OpenAsTextStream(1) Str = vbNullString While Not TextStream.AtEndOfLine Str = Str & TextStream.Column & ": " & TextStream.Read(1) & vbCrLf Wend TextStream.Close MsgBox Str

 
Line Возвращаемое значение: содержит номер текущей строки файла. Только чтение
Аргумент - объект TextStream.
Пример:
 
function GetLine() { var fso, f, r var ForReading = 1, ForWriting = 2; fso = new ActiveXObject("Scripting.FileSystemObject") f = fso.OpenTextFile("c:\\textfile.txt", ForWriting, true) f.WriteLine("Hello world!"); f.WriteLine("JScript is fun"); f.Close(); f = fso.OpenTextFile("c:\\textfile.txt", ForReading); r = f.ReadAll(); return(f.Line); }

 

Объект TextStream. Методы

Методы Описание
Close Закрывает открытый TextStream файл
Пример:
 
var fso; fso = new ActiveXObject("Scripting.FileSystemObject"); a = fso.CreateTextFile("c:\\testfile.txt", true); a.WriteLine("This is a test."); a.Close();

 
Read Синтаксис:
Read(Characters)
Назначение: считывает из TextStream указанное количество символов и возвращает полученную строку.
Параметры:
Characters - число, количество символов, которое нужно считать.

Пример:
 
function GetHeader() { var fso, f; var ForReading = 1, ForWriting = 2; fso = new ActiveXObject("Scripting.FileSystemObject"); f = fso.OpenTextFile("c:\\testfile.txt", ForWriting, true); f.Write("Header"); f.Write("1234567890987654321"); f.Close(); f = fso.OpenTextFile("c:\\testfile.txt", ForReading); return(f.Read(6)); }

 
ReadAll Синтаксис:
ReadAll
Назначение: считывает весь файл и возвращает полученную строку.
Параметры: нет.
Описание: для больших файлов использование этого метода потребует больших ресурсов памяти.
Пример:
 
function GetEverything() { var fso, f; var ForReading = 1, ForWriting = 2; fso = new ActiveXObject("Scripting.FileSystemObject"); f = fso.OpenTextFile("c:\\testfile.txt", ForWriting, true); f.Write("Header"); f.Write("1234567890987654321"); f.Close(); f = fso.OpenTextFile("c:\\testfile.txt", ForReading); return(f.ReadAll()); }

 
ReadLine Синтаксис:
Skip(Characters)
Назначение: пропускает при чтении файла указанное количество символов.
Параметры:
Characters - число, количество символов, которые нужно пропустить.
Пример:
 
Set FSO = CreateObject("Scripting.FileSystemObject") Set File = FSO.GetFile("C:\boot.ini") Set TextStream = File.OpenAsTextStream(1) Str = vbNullString While Not TextStream.AtEndOfStream Str = Str & TextStream.ReadLine() & vbCrLf Wend MsgBox Str TextStream.Close

 
Skip Синтаксис:
Skip(Characters)
Назначение: пропускает при чтении файла указанное количество символов.
Параметры:
Characters - число, количество символов, которые нужно пропустить.
Пример:
 
function SkipDemo() { var fso, f, r; var ForReading = 1, ForWriting = 2; fso = new ActiveXObject("Scripting.FileSystemObject") f = fso.OpenTextFile("c:\\testfile.txt", ForWriting, true); f.WriteLine("Hello world!"); f.WriteLine("JScript is fun"); f.Close(); f = fso.OpenTextFile("c:\\testfile.txt", ForReading); f.Skip(6); r = f.ReadLine(); return(r); }

 
SkipLine Назначение: Пропускает при чтении файла строку.
Параметры: Нет.
Пример:
 
function SkipLineDemo() { var fso, f, r var ForReading = 1, ForWriting = 2; fso = new ActiveXObject("Scripting.FileSystemObject") f = fso.OpenTextFile("c:\\testfile.txt", ForWriting, true) f.WriteLine("Hello world!"); f.WriteLine("JScript is fun"); f.Close(); f = fso.OpenTextFile("c:\\testfile.txt", ForReading); f.SkipLine(); r = f.ReadLine(); return(r); }

 
Write Синтаксис:
Write(String)
Назначение: записывает в файл указанную строку. Символы возврата каретки и новой строки в файл не записываются.
Параметры:
String - строка для записи в файл.
Пример:
 
function WriteDemo() { var fso, f, r var ForReading = 1, ForWriting = 2; fso = new ActiveXObject("Scripting.FileSystemObject") f = fso.OpenTextFile("c:\\testfile.txt", ForWriting, true) f.Write("Hello world!"); f.Close(); f = fso.OpenTextFile("c:\\testfile.txt", ForReading); r = f.ReadLine(); return(r); }

 
WriteBlankLines Синтаксис:
WriteBlankLines(Lines)
Назначение: записывает в файл указанное количество пустых строк (символы возврата каретки и новой строки).
Параметры:
Lines - число, количество пустых строк, которое надо записать.
Пример:
 
function WriteBlanksDemo() { var fso, f, r; var ForReading = 1, ForWriting = 2; fso = new ActiveXObject("Scripting.FileSystemObject"); f = fso.OpenTextFile("c:\\testfile.txt", ForWriting, true); f.Write("Hello world!"); f.WriteBlankLines(2); f.Write("JScript is fun!"); f.Close(); f = fso.OpenTextFile("c:\\testfile.txt", ForReading); r = f.ReadAll(); return(r); }

 
WriteLine Синтаксис:
WriteLine(String)
Назначение: записывает в файл указанную строку. В файл записываются символы возврата каретки и новой строки.
Параметры:
String - необязательный, строка для записи в файл. Если опущен, в файл записывается пустая строка.
Пример:
 
function WriteBlanksDemo() { var fso, f, r; var ForReading = 1, ForWriting = 2; fso = new ActiveXObject("Scripting.FileSystemObject"); f = fso.OpenTextFile("c:\\testfile.txt", ForWriting, true); f.Write("Hello world!"); f.WriteBlankLines(2); f.Write("JScript is fun!"); f.Close(); f = fso.OpenTextFile("c:\\testfile.txt", ForReading); r = f.ReadAll(); return(r); }

 

Коллекция Folders.

Коллекция Folders имеет только стандартные свойства коллекций: Count и Item.
 

Коллекция Folders. Методы.

Методы Описание
Add Создает новый каталог в родительском каталоге коллекции Folders.
Синтаксис:
Add(folderName)
folderName - обязательный - String- имя создаваемого каталога.
Если каталог с именем folderName уже существует в коллекции, то возникает ошибка)
Пример:
 
function AddNewFolder(path,folderName) { var fso, f, fc, nf; fso = new ActiveXObject("Scripting.FileSystemObject"); f = fso.GetFolder(path); fc = f.SubFolders; if (folderName != "" ) nf = fc.Add(folderName); else nf = fc.Add("New Folder"); }

 

Коллекция Files

Коллекция интерфейсных объектов класса File, обеспечивающих доступ ко всем файлам в данном каталоге.
Коллекция Files имеет только стандартные свойства коллекций: Count и Item.
Коллекция Files не имеет методов.

Коллекция Drives

Коллекция, содержащая интерфейсные объекты всех дисков, доступных на машине. Только для чтения.
Для того, чтобы диски для съемных носителей были включены в коллекцию Drives, необязательно, чтобы в них присутствовали носители.
Коллекция Drives имеет только стандартные свойства коллекций: Count и Item.
Коллекция Drives не имеет методов.
Пример работы с коллекцией Drives:
 

function ShowDriveList() { var fso, s, n, e, x; fso = new ActiveXObject("Scripting.FileSystemObject"); e = new Enumerator(fso.Drives); s = ""; for (; !e.atEnd(); e.moveNext()) { x = e.item(); s = s + x.DriveLetter; s += " - "; if (x.DriveType == 3) n = x.ShareName; else if (x.IsReady) n = x.VolumeName; else n = "[Drive not ready]"; s += n + \n"; } return(s); }

Одноименные свойства объектов Folder и File

Объекты Folder и File имеют ряд свойств, имена и смысл которых совпадают для обоих объектов.

Cвойства Описание
Attributes Возвращает и устанавливает новые значения атрибутов файла или каталога. Часть атрибутов можно только читать.
DateCreated Возвращает дату и время создания указанного файла или каталога. Только для чтения.
DateLastAccessed Возвращает дату и время последнего доступа (на запись или на чтение) к указанному файлу или каталогу. Только для чтения.
DateLastModified Возвращает дату и время последнего изменения указанного файла или каталога. Только для чтения.
Drive Возвращает букву диска, на котором расположен указанный файл или каталог. Только для чтения.
Name Возвращает или изменяет имя указанного файла или каталога
ParentFolder Возвращает объект для доступа к родительскому каталогу указанного файла или каталога. Только для чтения.
Path Путь для указанного файла или каталога. Только для чтения.
ShortName Возвращает так называемое короткое имя объекта, которое требуется для совместимости с устаревшим соглашением.
ShortPath Возвращает так называемый короткий путь для объекта, который требуется для совместимости с устаревшим соглашением 8.3. Каждое звено короткого пути удовлетворяет соглашению 8.3.
Size Возвращает размер файла или суммарный объем (в байтах) всех файлов и подкаталогов указанного каталога.
Type Возвращает информацию о типе файла, ассоциированном с расширением имени файла. Для каталога возвращается строка "File Folder"

Одноименные методы объектов Folder и File

Объекты Folder и File имеют методы, имена и смысл которых совпадают для обоих объектов.

Методы Описание
Copy Копирует указанный файл или каталог из одного места в другое.
Delete Удаляет указанный файл или каталог.
Move Перемещает из одного места в другое или переименовывает указанный файл или каталог (со всеми подкаталогами).
Категория: Твики, BAT, CMD | Добавил: masterov (08.10.2017) E W
Просмотров: 13 | Теги: команда, cmd, консоль | Рейтинг: 0.0/0
Всего комментариев: 0
avatar