Содержание
- Метод OpenTextFile
- Синтаксис
- Settings
- Замечания
- См. также
- Поддержка и обратная связь
- Метод Workbooks.Open (Excel)
- Синтаксис
- Параметры
- Возвращаемое значение
- Замечания
- Пример
- Поддержка и обратная связь
Метод OpenTextFile
Открывает указанный файл и возвращает объект TextStream , который можно использовать для чтения, записи в файл или добавления к нему.
Синтаксис
object. OpenTextFile (filename, [ iomode, [ create, [ format ]]])
Синтаксис метода OpenTextFile состоит из следующих элементов.
Part | Описание |
---|---|
object | Обязательно. Всегда имя объекта FileSystemObject. |
Имени файла | Обязательно. Строковое выражение, определяющее файл, который будет открыт. |
iomode | Необязательный параметр. Указывает режим ввода-вывода. Может соответствовать одной из трех констант: ForReading, ForWriting или ForAppending. |
создать | Необязательный параметр. Значение типа Boolean, которое указывает, можно ли создать новый файл, если файл, указанный параметром filename, не существует. Значение True позволяет создать новый файл, а значение False — нет. По умолчанию используется значение False. |
format | Необязательный параметр. Одно из трех значений Tristate, используемых, чтобы указать формат открытого файла. Если отсутствует, открытый файл имеет формат ASCII. |
Settings
Аргумент iomode может иметь любой из следующих параметров:
Константа | Значение | Описание |
---|---|---|
ForReading | 1 | Открытие файла только для чтения. Запись в этот файл невозможна. |
ForWriting | 2 | Откройте файл только для записи. Используйте этот режим для замены существующего файла новыми данными. Невозможно выполнить чтение из этого файла. |
ForAppending | 8 | Открытие файла и запись в конец файла. Невозможно выполнить чтение из этого файла. |
Аргумент format может иметь одно из следующих значений.
Константа | Значение | Описание |
---|---|---|
TristateUseDefault | –2 | Открывает файл с помощью системного значения по умолчанию. |
TristateTrue | –1 | Открывает файл в формате Юникод. |
TristateFalse | 0 | Открывает файл в формате ASCII. |
Замечания
В следующем коде показано использование метода OpenTextFile для открытия файла для добавления текста.
См. также
Поддержка и обратная связь
Есть вопросы или отзывы, касающиеся Office VBA или этой статьи? Руководство по другим способам получения поддержки и отправки отзывов см. в статье Поддержка Office VBA и обратная связь.
Источник
Метод Workbooks.Open (Excel)
Хотите создавать решения, которые расширяют возможности Office на разнообразных платформах? Ознакомьтесь с новой моделью надстроек Office. Надстройки Office занимают меньше места по сравнению с надстройками и решениями VSTO, и вы можете создавать их, используя практически любую технологию веб-программирования, например HTML5, JavaScript, CSS3 и XML.
Синтаксис
expression. Открыть (FileName, UpdateLinks, ReadOnly, Format, Password, WriteResPassword, IgnoreReadOnlyRecommended, Origin, Разделитель, Editable, Notify, Converter, AddToMru, Local, CorruptLoad)
Выражение Переменная, представляющая объект Workbooks .
Параметры
Имя | Обязательный или необязательный | Тип данных | Описание |
---|---|---|---|
FileName | Необязательный | Variant | Строка. Имя файла открываемой книги. |
UpdateLinks | Необязательный | Variant | Указывает способ обновления внешних ссылок (ссылок) в файле, например ссылки на диапазон в книге Budget.xls в следующей формуле =SUM([Budget.xls]Annual!C10:C25) . Если этот аргумент опущен, пользователю будет предложено указать, как будут обновляться ссылки. Дополнительные сведения о значениях, используемых этим параметром, см. в разделе Примечания. |
Если Microsoft Excel открывает файл в формате WKS, WK1 или WK3 и аргумент UpdateLinks имеет значение 0, диаграммы не создаются; В противном случае Microsoft Excel создает диаграммы из диаграмм, присоединенных к файлу. ReadOnly Необязательно устанавливать. Variant Значение true, чтобы открыть книгу в режиме только для чтения. Format Необязательный Variant Если Microsoft Excel открывает текстовый файл, этот аргумент задает символ разделителя. Если этот аргумент опущен, используется текущий разделитель. Дополнительные сведения о значениях, используемых этим параметром, см. в разделе Примечания. Password Необязательный Variant Строка, содержащая пароль, необходимый для открытия защищенной книги. Если этот аргумент опущен, а для книги требуется пароль, пользователю будет предложено ввести пароль. WriteResPassword Необязательный Variant Строка, содержащая пароль, необходимый для записи в книгу, зарезервированную для записи. Если этот аргумент опущен, а книге требуется пароль, пользователю будет предложено ввести пароль. IgnoreReadOnlyRecommended Необязательный Variant Значение true , чтобы Microsoft Excel не отображал рекомендуемое сообщение только для чтения (если книга была сохранена с параметром «Только для чтения рекомендуется «). Происхождения Необязательный Variant Если файл является текстовым файлом, этот аргумент указывает, где он возник, чтобы кодовые страницы и возврат/строка каретки (CR/LF) можно было правильно сопоставить. Может быть одной из следующих констант XlPlatform : xlMacintosh, xlWindows или xlMSDOS. Если этот аргумент опущен, используется текущая операционная система. Разделитель Необязательный Variant Если файл является текстовым файлом, а аргумент Format равен 6, этот аргумент представляет собой строку, указывающую символ, который будет использоваться в качестве разделителя. Например, используйте Chr(9) для вкладок, «,» для запятых, «;» для точки с запятой или используйте пользовательский символ. Используется только первый символ строки. Изменяемость Необязательный Variant Если файл является надстройкой Microsoft Excel 4.0, этот аргумент имеет значение True , чтобы открыть надстройку, чтобы она была видимым окном. Если этот аргумент имеет значение False или опущен, надстройка открывается как скрытая и не может быть раскрыта. Этот параметр не применяется к надстройкам, созданным в Microsoft Excel 5.0 или более поздней версии.
Если файл является шаблоном Excel, значение True , чтобы открыть указанный шаблон для редактирования. Значение false , чтобы открыть новую книгу на основе указанного шаблона. Значение по умолчанию — False. Уведомить Необязательный Variant Если файл не удается открыть в режиме чтения и записи, этот аргумент имеет значение True , чтобы добавить файл в список уведомлений о файлах. Microsoft Excel откроет файл как доступный только для чтения, опрашивает список уведомлений о файлах, а затем уведомляет пользователя, когда файл станет доступен. Если этот аргумент имеет значение False или опущен, уведомление не запрашивается, и любые попытки открыть недоступный файл завершатся ошибкой. Конвертер Необязательный Variant Индекс первого преобразователя файлов, который следует попробовать при открытии файла. Сначала выполняется попытка указанного преобразователя файлов; Если этот преобразователь не распознает файл, все остальные преобразователи будут испытаны. Индекс преобразователя состоит из номеров строк преобразователей, возвращаемых свойством FileConverters . AddToMru Необязательный Variant Значение true , чтобы добавить эту книгу в список недавно использовавшихся файлов. Значение по умолчанию — False. Local Необязательный Variant Значение True сохраняет файлы на языке Microsoft Excel (включая параметры панели управления). Значение False (по умолчанию) сохраняет файлы на языке Visual Basic для приложений (VBA) (который обычно США английском языке, если проект VBA, из которого выполняется Workbooks.Open, не является старым проектом VBA с международной версией XL5/95). Поврежденная загрузка Необязательный XlCorruptLoad Может быть одной из следующих констант: xlNormalLoad, xlRepairFile и xlExtractData. Поведение по умолчанию, если значение не указано, — xlNormalLoad и не пытается выполнить восстановление при инициировании с помощью OM.
Возвращаемое значение
Объект Workbook , представляющий открытую книгу.
Замечания
По умолчанию макросы включены при открытии файлов программным способом. Используйте свойство AutomationSecurity , чтобы задать режим безопасности макросов, используемый при программном открытии файлов.
Можно указать одно из следующих значений в параметре UpdateLinks , чтобы определить, обновляются ли внешние ссылки (ссылки) при открытии книги.
Значение | Описание |
---|---|
0 | Внешние ссылки (ссылки) не будут обновляться при открытии книги. |
3 | Внешние ссылки (ссылки) будут обновлены при открытии книги. |
Можно указать одно из следующих значений в параметре Format , чтобы определить символ разделителя для файла.
Значение | Разделитель |
---|---|
1 | Вкладки |
2 | Запятыми |
3 | Пробелы |
4 | Точка с запятой |
5 | Отсутствует |
6 | Пользовательский символ (см. аргумент Разделитель ) |
Пример
В следующем примере кода открывается книга Analysis.xls, а затем выполняется ее макрос Auto_Open.
Следующий пример кода импортирует лист из другой книги на новый лист в текущей книге. Лист 1 в текущей книге должен содержать имя пути к книге для импорта в ячейку D3, имя файла в ячейке D4 и имя листа в ячейке D5. Импортированный лист вставляется после Листа1 в текущую книгу.
Поддержка и обратная связь
Есть вопросы или отзывы, касающиеся Office VBA или этой статьи? Руководство по другим способам получения поддержки и отправки отзывов см. в статье Поддержка Office VBA и обратная связь.
Источник
148 / 35 / 6 Регистрация: 01.11.2013 Сообщений: 779 |
|
1 |
|
Открыть только для чтения08.07.2020, 22:05. Показов 11718. Ответов 14
При открытии Excel — евского файла появляется диалоговое окно с просьбой ввести пароль или открыть только для чтения.
0 |
amd48 779 / 461 / 79 Регистрация: 18.05.2016 Сообщений: 1,242 Записей в блоге: 4 |
||||
09.07.2020, 09:38 |
2 |
|||
Решениенагуглил на другом форуме
1 |
1811 / 1134 / 345 Регистрация: 11.07.2014 Сообщений: 3,998 |
|
09.07.2020, 11:41 |
3 |
govorun, а у вас в этом файле макросы, нужные вам, есть или нужно только содержимое листов?
0 |
148 / 35 / 6 Регистрация: 01.11.2013 Сообщений: 779 |
|
09.07.2020, 22:29 [ТС] |
4 |
Из VBA открываю Excel-евский файл что бы взять содержимое листов и закрыть его. Не показывая на экране. И все бы ничего, только вот при открытии файла вылазит запрос на пароль. Портит всю картину. По умолчанию стоит «Только для чтения», в принципе мне только это и нужно. Надо как-то что-то сделать, что бы это окно на экране не появлялось. Миниатюры
0 |
1811 / 1134 / 345 Регистрация: 11.07.2014 Сообщений: 3,998 |
|
10.07.2020, 05:52 |
5 |
govorun, ну тогда может просто один раз открыть с запросом, создать новый файл и все листы скопировать в него. Этот новый сохранить под неким именем (в нем уже запроса не будет) и в дальнейшем работать только с ним. А макросы этого файла вы увидеть можете?
0 |
148 / 35 / 6 Регистрация: 01.11.2013 Сообщений: 779 |
|
10.07.2020, 06:50 [ТС] |
6 |
Burk, В нем нет макросов. Даже если они там есть, они мне не нужны. Мне нужно периодически брать данные с листов. Эти данные меняются. По-этому в копировании листов нет смысла
0 |
1811 / 1134 / 345 Регистрация: 11.07.2014 Сообщений: 3,998 |
|
10.07.2020, 07:02 |
7 |
govorun, я хотел узнать, если возможно, откуда приходит этот запрос. Если из модуля Эта книга, то изменить (удалить) этот запрос. Поэтому и хотелось посмотреть есть ли что-то в проекте ВБА. Ведь если выставить Защитить книгу, то такого запроса нет. Файл, по-видимому, не из вашей фирмы?
0 |
148 / 35 / 6 Регистрация: 01.11.2013 Сообщений: 779 |
|
10.07.2020, 07:09 [ТС] |
8 |
не из вашей фирмы Возможно, не знаю.
0 |
1811 / 1134 / 345 Регистрация: 11.07.2014 Сообщений: 3,998 |
|
10.07.2020, 09:03 |
9 |
govorun, что значит возможно? Ведь если автор файла ваш, то он легко уберет этот запрос. А прислать этот файл вы не можете потому, что он шибко секретный?
0 |
2628 / 1634 / 744 Регистрация: 23.03.2015 Сообщений: 5,135 |
|
10.07.2020, 09:11 |
10 |
govorun,
0 |
КостяФедореев Часто онлайн 790 / 529 / 237 Регистрация: 09.01.2017 Сообщений: 1,820 |
||||
10.07.2020, 09:27 |
11 |
|||
Решениеgovorun, Опробуйте у меня сработало.
1 |
1811 / 1134 / 345 Регистрация: 11.07.2014 Сообщений: 3,998 |
|
10.07.2020, 09:39 |
12 |
КостяФедореев, это сработает не только у вас, но и у любого другого. Но здесь другой случай, при открытии не своего файла выскакивает этот запрос и, как я подозреваю, доступа к его макросам нет. По-видимому этот запрос в Эта книга открываемого (чужого) файла. А автор — партизан и приходится из него выдавливать информацию.
0 |
Часто онлайн 790 / 529 / 237 Регистрация: 09.01.2017 Сообщений: 1,820 |
|
10.07.2020, 09:48 |
13 |
Burk, Я защитил книгу на другом компе с другим пользователем также, как и у govorun, и переслал себе. Своим макросом открыл эту книгу и запроса не было.
0 |
1811 / 1134 / 345 Регистрация: 11.07.2014 Сообщений: 3,998 |
|
10.07.2020, 09:57 |
14 |
КостяФедореев, надо было ещё любой запрос поставить в Эта книга в файле на другом компе (a=Msgbox….) и посмотреть будет ли этот запрос.
0 |
148 / 35 / 6 Регистрация: 01.11.2013 Сообщений: 779 |
|
10.07.2020, 19:18 [ТС] |
15 |
amd48, КостяФедореев, ReadOnly сработало. Спасибо
0 |
title | keywords | f1_keywords | ms.prod | api_name | ms.assetid | ms.date | ms.localizationpriority |
---|---|---|---|---|---|---|---|
Workbooks.Open method (Excel) |
vbaxl10.chm203082 |
vbaxl10.chm203082 |
excel |
Excel.Workbooks.Open |
1d1c3fca-ae1a-0a91-65a2-6f3f0fb308a0 |
08/14/2019 |
medium |
Workbooks.Open method (Excel)
Opens a workbook.
[!includeAdd-ins note]
Syntax
expression.Open (FileName, UpdateLinks, ReadOnly, Format, Password, WriteResPassword, IgnoreReadOnlyRecommended, Origin, Delimiter, Editable, Notify, Converter, AddToMru, Local, CorruptLoad)
expression A variable that represents a Workbooks object.
Parameters
Name | Required/Optional | Data type | Description |
---|---|---|---|
FileName | Optional | Variant | String. The file name of the workbook to be opened. |
UpdateLinks | Optional | Variant | Specifies the way external references (links) in the file, such as the reference to a range in the Budget.xls workbook in the following formula =SUM([Budget.xls]Annual!C10:C25) , are updated. If this argument is omitted, the user is prompted to specify how links will be updated. For more information about the values used by this parameter, see the Remarks section.
If Microsoft Excel is opening a file in the WKS, WK1, or WK3 format and the UpdateLinks argument is 0, no charts are created; otherwise, Microsoft Excel generates charts from the graphs attached to the file. |
ReadOnly | Optional | Variant | True to open the workbook in read-only mode. |
Format | Optional | Variant | If Microsoft Excel opens a text file, this argument specifies the delimiter character. If this argument is omitted, the current delimiter is used. For more information about the values used by this parameter, see the Remarks section. |
Password | Optional | Variant | A string that contains the password required to open a protected workbook. If this argument is omitted and the workbook requires a password, the user is prompted for the password. |
WriteResPassword | Optional | Variant | A string that contains the password required to write to a write-reserved workbook. If this argument is omitted and the workbook requires a password, the user will be prompted for the password. |
IgnoreReadOnlyRecommended | Optional | Variant | True to have Microsoft Excel not display the read-only recommended message (if the workbook was saved with the Read-Only Recommended option). |
Origin | Optional | Variant | If the file is a text file, this argument indicates where it originated, so that code pages and Carriage Return/Line Feed (CR/LF) can be mapped correctly. Can be one of the following XlPlatform constants: xlMacintosh, xlWindows, or xlMSDOS. If this argument is omitted, the current operating system is used. |
Delimiter | Optional | Variant | If the file is a text file and the Format argument is 6, this argument is a string that specifies the character to be used as the delimiter. For example, use Chr(9) for tabs, use «,» for commas, use «;» for semicolons, or use a custom character. Only the first character of the string is used. |
Editable | Optional | Variant | If the file is a Microsoft Excel 4.0 add-in, this argument is True to open the add-in so that it is a visible window. If this argument is False or omitted, the add-in is opened as hidden, and it cannot be unhidden. This option does not apply to add-ins created in Microsoft Excel 5.0 or later.
If the file is an Excel template, True to open the specified template for editing. False to open a new workbook based on the specified template. The default value is False. |
Notify | Optional | Variant | If the file cannot be opened in read/write mode, this argument is True to add the file to the file notification list. Microsoft Excel will open the file as read-only, poll the file notification list, and then notify the user when the file becomes available. If this argument is False or omitted, no notification is requested, and any attempts to open an unavailable file will fail. |
Converter | Optional | Variant | The index of the first file converter to try when opening the file. The specified file converter is tried first; if this converter does not recognize the file, all other converters are tried. The converter index consists of the row numbers of the converters returned by the FileConverters property. |
AddToMru | Optional | Variant | True to add this workbook to the list of recently used files. The default value is False. |
Local | Optional | Variant | True saves files against the language of Microsoft Excel (including control panel settings). False (default) saves files against the language of Visual Basic for Applications (VBA) (which is typically United States English unless the VBA project where Workbooks.Open is run from is an old internationalized XL5/95 VBA project). |
CorruptLoad | Optional | XlCorruptLoad | Can be one of the following constants: xlNormalLoad, xlRepairFile and xlExtractData. The default behavior if no value is specified is xlNormalLoad, and does not attempt recovery when initiated through the OM. |
Return value
A Workbook object that represents the opened workbook.
Remarks
By default, macros are enabled when opening files programmatically. Use the AutomationSecurity property to set the macro security mode used when opening files programmatically.
You can specify one of the following values in the UpdateLinks parameter to determine whether external references (links) are updated when the workbook is opened.
Value | Description |
---|---|
0 | External references (links) will not be updated when the workbook is opened. |
3 | External references (links) will be updated when the workbook is opened. |
You can specify one of the following values in the Format parameter to determine the delimiter character for the file.
Value | Delimiter |
---|---|
1 | Tabs |
2 | Commas |
3 | Spaces |
4 | Semicolons |
5 | Nothing |
6 | Custom character (see the Delimiter argument) |
Example
The following code example opens the workbook Analysis.xls and then runs its Auto_Open macro.
Workbooks.Open "ANALYSIS.XLS" ActiveWorkbook.RunAutoMacros xlAutoOpen
The following code example imports a sheet from another workbook onto a new sheet in the current workbook. Sheet1 in the current workbook must contain the path name of the workbook to import in cell D3, the file name in cell D4, and the worksheet name in cell D5. The imported worksheet is inserted after Sheet1 in the current workbook.
Sub ImportWorksheet() ' This macro will import a file into this workbook Sheets("Sheet1").Select PathName = Range("D3").Value Filename = Range("D4").Value TabName = Range("D5").Value ControlFile = ActiveWorkbook.Name Workbooks.Open Filename:=PathName & Filename ActiveSheet.Name = TabName Sheets(TabName).Copy After:=Workbooks(ControlFile).Sheets(1) Windows(Filename).Activate ActiveWorkbook.Close SaveChanges:=False Windows(ControlFile).Activate End Sub
[!includeSupport and feedback]
Задача по объединению данных из нескольких Excel-файлов, или подгрузка доп.данных из внешнего файла решается достаточно просто: создается объект Excel, который можно скрыть визуально, затем открывается необходимый файл и выполняются нужные действия. Просто приведу несколько примеров.
Открытие файла Excel
Set objExcel = New Excel.Application objExcel.Visible = False Set wb = objExcel.Workbooks.Open(fname) Set ws = wb.Sheets(1)
В первой строке запускаем новый Excel, затем делаем его невидимым, в 3-й строке открываем файл fname. В последней строке получаем первый лист открытого excel-кого файла.
Альтернативный вариант открытия файла
Set objExcel = New Excel.Application Set wb = objExcel.Workbooks wb.Open fname, local:=True Set ws = wb.Item(1).ActiveSheet
При открытии файла можно использовать доп.параметры (приведу некоторые):
UpdateLinks — обновлять или нет внешние ссылки при открытии файла;
ReadOnly — открытие в режиме только для чтения;
Format — используемый при открытии разделитель (1 — символ tab, 2 — запятые, 3 — пробелы, 4 — точка с запятой, 5 — без разделителя, 6 — пользовательский разделитель, заданный в Delimiter);
Delimiter — пользовательский разделитель (в случае, если Format = 6);
Origin — тип операционной системы (xlMacintosh, xlWindows или xlMSDOS);
Local — использование в Excel языка такого же, как в открываемом файле.
Теперь можно выполнять какие-то действия с открытым файлом, просто обращаясь через wb и ws.
ws.Cells(1, 1).Value = "Test" ws.Cells(1, 1).Font.Size = 18 ' Поменять размер шрифта ws.Cells(1, 1).HorizontalAlignment = xlCenter '
Записать книгу и закрыть
wb.Save ' Записать с тем же именем wb.SaveAs Filename:="имя_нового_файла", FileFormat:=xlOpenXMLWorkbookMacroEnabled ' Записать в новый файл wb.Close ' Закрыть книгу
Для записи текущей книги (где находится макрос), можно использовать:
ActiveWorkbook.SaveAs
Чтобы сохранить или перезаписать книгу Excel без вопросов, можно применить такой вариант:
Application.DisplayAlerts = False ActiveWorkbook.SaveAs Filename:="c:Temp001.xlsm", FileFormat:=xlOpenXMLWorkbookMacroEnabled Application.DisplayAlerts = True
У метода SaveAs есть несколько параметров сохранения, с ними можно ознакомиться на сайте Microsoft.
Если нужно, можно закрыть книгу Excel без сохранения изменений таким образом:
wb.Close False
Содержание
- Объект FileSystemObject
- 1. Создание объекта
- 2. Свойства
- 2.1. Drives
- 3. Методы
- 3.1. CreateFolder
- 3.2. CopyFile
- 3.3. CopyFolder
- 3.4. MoveFile
- 3.5. MoveFolder
- 3.6. DeleteFile
- 3.7. DeleteFolder
- 3.8. BuildPath
- 3.9. GetAbsolutePathName
- 3.10. GetBaseName
- 3.11. GetExtensionName
- 3.12. GetFileName
- 3.13. GetParentFolderName
- 3.14. GetDriveName
- 3.15. DriveExists
- 3.16. FileExists
- 3.17. FolderExists
- 3.18. GetDrive
- 3.19. GetFile
- 3.20. GetFolder
- 3.21. GetSpecialFolder
- 3.22. GetTempName
- 3.23. CreateTextFile
- 3.24. OpenTextFile
- 3.25. GetStandardStream
- 3.26. GetFileVersion
- 4. Объект Drive
- 4.1. Создание объекта
- 4.2. Свойства
- 4.2.1. AvailableSpace
- 4.2.2. DriveLetter
- 4.2.3. DriveType
- 4.2.4. FileSystem
- 4.2.5. FreeSpace
- 4.2.6. IsReady
- 4.2.7. Path
- 4.2.8. RootFolder
- 4.2.9. SerialNumber
- 4.2.10. ShareName
- 4.2.11. TotalSize
- 4.2.12. VolumeName
- 5. Объект File
- 5.1. Создание объекта
- 5.2. Свойства
- 5.2.1. Attributes
- 5.2.2. DateCreated
- 5.2.3. DateLastAccessed
- 5.2.4. DateLastModified
- 5.2.5. Drive
- 5.2.6. Name
- 5.2.7. ParentFolder
- 5.2.8. Path
- 5.2.9. ShortName
- 5.2.10. ShortPath
- 5.2.11. Size
- 5.2.12. Type
- 5.3. Методы
- 5.3.1. Copy
- 5.3.2. Move
- 5.3.3. Delete
- 5.3.4. OpenAsTextStream
- 6. Объект Folder
- 6.1. Создание объекта
- 6.2. Свойства
- 6.2.1. Attributes
- 6.2.2. DateCreated
- 6.2.3. DateLastAccessed
- 6.2.4. DateLastModified
- 6.2.5. Drive
- 6.2.6. IsRootFolder
- 6.2.7. Name
- 6.2.8. ParentFolder
- 6.2.9. Path
- 6.2.10. ShortName
- 6.2.11. ShortPath
- 6.2.12. Size
- 6.2.13. Type
- 6.2.14. SubFolders
- 6.2.15. Files
- 6.3. Методы
- 6.3.1. Copy
- 6.3.2. Move
- 6.3.3. Delete
- 6.3.4. CreateTextFile
- 7. Объект TextStream
- 7.1. Создание объекта
- 7.2. Свойства
- 7.2.1. AtEndOfLine
- 7.2.2. AtEndOfStream
- 7.2.3. Column
- 7.2.4. Line
- 7.3. Методы
- 7.3.1. Close
- 7.3.2. Read
- 7.3.3. ReadAll
- 7.3.4. ReadLine
- 7.3.5. Skip
- 7.3.6. SkipLine
- 7.3.7. Write
- 7.3.8. WriteLine
- 7.3.9. WriteBlankLines
Объект FileSystemObject
Ниже приведен справочник по объекту FileSystemObject, который умеет работать с файлами, каталогами, файловыми потоками. Данный объект позволяет читать файлы, писать в файлы, получать информацию о файлах и др. Данный объект используется в ОС Windows, в некоторых скриптовых языках.
1. Создание объекта 2. Свойства 2.1. Drives 3. Методы 3.1. CreateFolder 3.2. CopyFile 3.3. CopyFolder 3.4. MoveFile 3.5. MoveFolder 3.6. DeleteFile 3.7. DeleteFolder 3.8. BuildPath 3.9. GetAbsolutePathName 3.10. GetBaseName 3.11. GetExtensionName 3.12. GetFileName 3.13. GetParentFolderName 3.14. GetDriveName 3.15. DriveExists 3.16. FileExists 3.17. FolderExists 3.18. GetDrive 3.19. GetFile 3.20. GetFolder 3.21. GetSpecialFolder 3.22. GetTempName 3.23. CreateTextFile 3.24. OpenTextFile 3.25. GetStandardStream 3.26. GetFileVersion 4. Объект Drive 4.1. Создание объекта 4.2. Свойства 4.2.1. AvailableSpace 4.2.2. DriveLetter 4.2.3. DriveType 4.2.4. FileSystem 4.2.5. FreeSpace 4.2.6. IsReady 4.2.7. Path 4.2.8. RootFolder 4.2.9. SerialNumber 4.2.10. ShareName 4.2.11. TotalSize 4.2.12. VolumeName 5. Объект File 5.1. Создание объекта 5.2. Свойства 5.2.1. Attributes 5.2.2. DateCreated 5.2.3. DateLastAccessed 5.2.4. DateLastModified 5.2.5. Drive 5.2.6. Name 5.2.7. ParentFolder 5.2.8. Path 5.2.9. ShortName 5.2.10. ShortPath 5.2.11. Size 5.2.12. Type 5.3. Методы 5.3.1. Copy 5.3.2. Move 5.3.3. Delete 5.3.4. OpenAsTextStream 6. Объект Folder 6.1. Создание объекта 6.2. Свойства 6.2.1. Attributes 6.2.2. DateCreated 6.2.3. DateLastAccessed 6.2.4. DateLastModified 6.2.5. Drive 6.2.6. IsRootFolder 6.2.7. Name 6.2.8. ParentFolder 6.2.9. Path 6.2.10. ShortName 6.2.11. ShortPath 6.2.12. Size 6.2.13. Type 6.2.14. SubFolders 6.2.15. Files 6.3. Методы 6.3.1. Copy 6.3.2. Move 6.3.3. Delete 6.3.4. CreateTextFile 7. Объект TextStream 7.1. Создание объекта 7.2. Свойства 7.2.1. AtEndOfLine 7.2.2. AtEndOfStream 7.2.3. Column 7.2.4. Line 7.3. Методы 7.3.1. Close 7.3.2. Read 7.3.3. ReadAll 7.3.4. ReadLine 7.3.5. Skip 7.3.6. SkipLine 7.3.7. Write 7.3.8. WriteLine 7.3.9. WriteBlankLines
1. Создание объекта
Пример:
Set FSO = CreateObject("Scripting.FileSystemObject")
2. Свойства
2.1. Drives
Синтаксис:
Drives
Возвращаемое значение: объект-коллекция «Drives».
Замечание: только чтение.
Пример:
Set FSO = CreateObject("Scripting.FileSystemObject") For Each Drive In FSO.Drives MsgBox Drive.DriveLetter Next
Другой пример:
Set FSO = CreateObject("Scripting.FileSystemObject") Set Drives = FSO.Drives MsgBox "Всего дисков - " & Drives.Count Set DriveC = Drives.Item("C:") MsgBox "Диск C: имеет метку " & DriveC.VolumeName
3. Методы
3.1. CreateFolder
Синтаксис:
CreateFolder(<Foldername>)
Назначение: создаёт каталог с указанным именем.
Параметры:
- <Foldername> — строка, путь к каталогу. Если такой каталог уже существует, произойдёт ошибка.
Пример:
Set FSO = CreateObject("Scripting.FileSystemObject") FSO.CreateFolder "C:New Folder"
3.2. CopyFile
Синтаксис:
CopyFile(<Source>,<Destination>,<Overwrite>)
Назначение: копирует один или несколько файлов.
Параметры:
- <Source> — строка, путь к источнику копирования (что копировать). В последнем компоненте параметра можно использовать групповые символы «*» и «?».
- <Destination> — строка, путь назначения (куда копировать).
- <Overwrite> — необязательный, булево (число). Перезаписывать существующие файлы, или нет. По умолчанию — True (перезаписывать). Если файл, который нужно перезаписать, имеет атрибут read-only, возникнет ошибка (независимо от установки этого параметра).
Пример:
Set FSO = CreateObject("Scripting.FileSystemObject") FSO.CopyFile "C:*.bat", "A:", 0
3.3. CopyFolder
Синтаксис:
CopyFolder(<Source>,<Destination>,<Overwrite>)
Назначение: рекурсивно копирует каталог.
Параметры:
- <Source> — строка, путь к источнику копирования (что копировать). В последнем компоненте параметра можно использовать групповые символы «*» и «?».
- <Destination> — строка, путь назначения (куда копировать).
- <Overwrite> — необязательный, булево (число). Перезаписывать существующие файлы, или нет. По умолчанию — True (перезаписывать). Если файл, который нужно перезаписать, имеет атрибут read-only, возникнет ошибка (независимо от установки этого параметра).
Описание: процесс копирования прерывается после первой возникшей ошибки.
Пример:
Set FSO = CreateObject("Scripting.FileSystemObject") FSO.CopyFolder "C:NewFolder*", "C:TEMP", 0
3.4. MoveFile
Синтаксис:
MoveFile(<Source>,<Destination>)
Назначение: перемещает один или несколько файлов.
Параметры:
- <Source> — строка, путь к источнику копирования (что копировать). В последнем компоненте параметра можно использовать групповые символы «*» и «?».
- <Destination> — строка, путь назначения (куда копировать).
Описание: процесс перемещения прерывается после первой возникшей ошибки. Если перемещаемый файл уже существует или является папкой в Destination, возникнет ошибка.
Пример:
Set FSO = CreateObject("Scripting.FileSystemObject") FSO.MoveFile "C:*.txt", "A:"
3.5. MoveFolder
Синтаксис:
MoveFolder(<Source>,<Destination>)
Назначение: рекурсивно перемещает один или несколько каталогов.
Параметры:
- <Source> — строка, путь к источнику копирования (что копировать). В последнем компоненте параметра можно использовать групповые символы «*» и «?».
- <Destination> — строка, путь назначения (куда копировать).
Описание: процесс перемещения прерывается после первой возникшей ошибки. Если перемещаемый каталог уже существует или является файлом в Destination, возникнет ошибка.
Пример:
Set FSO = CreateObject("Scripting.FileSystemObject") FSO.MoveFolder "C:New Folde*", "C:TEMP"
3.6. DeleteFile
Синтаксис:
DeleteFile(<Filespec>,<Force>)
Назначение: удаляет указанный файл.
Параметры:
- <Filespec> — строка, путь к файлу. В последнем компоненте параметра можно использовать групповые символы «*» и «?».
- <Force> — необязательный, булево (число). Определяет, удалять или нет файлы с атрибутом read-only. По умолчанию — False (не удалять).
Пример:
Set FSO = CreateObject("Scripting.FileSystemObject") FSO.DeleteFile "A:*", 0
3.7. DeleteFolder
Синтаксис:
DeleteFolder(<Folderspec>,<Force>)
Назначение: удаляет указанную папку.
Параметры:
- <Folderspec> — строка, путь к папке. В последнем компоненте параметра можно использовать групповые символы «*» и «?».
- <Force> — необязательный, булево (число). Определяет, удалять или нет файлы с атрибутом read-only. По умолчанию — False (не удалять).
Пример:
Set FSO = CreateObject("Scripting.FileSystemObject") FSO.DeleteFolder "A:*", 0
3.8. BuildPath
Синтаксис:
BuildPath(<Path>,<Name>)
Назначение: добавляет к заданному пути новое имя. Если необходимо, вставляется «».
Параметры:
- <Path> — строка, путь.
- <Name> — строка, имя файла.
Пример:
Set FSO = CreateObject("Scripting.FileSystemObject") Path = FSO.BuildPath("C:Program Files", "New Folder") MsgBox Path Path = FSO.BuildPath("C:Program Files", "New Folder") MsgBox Path
3.9. GetAbsolutePathName
Синтаксис:
GetAbsolutePathName(<Pathspec>)
Назначение: возвращает полный путь для заданного относительного пути (из текущего каталога).
Параметры:
- <Pathspec> — строка, относительный путь.
Пример:
Set FSO = CreateObject("Scripting.FileSystemObject") Path = FSO.GetAbsolutePathName("..") MsgBox Path Path = FSO.GetAbsolutePathName(".aaabbbccc.txt") MsgBox Path
3.10. GetBaseName
Синтаксис:
GetBaseName(<Path>)
Назначение: возвращает имя (без расширения) последнего компонента в заданном пути.
Параметры:
- <Path> — строка, путь.
Пример:
Set FSO = CreateObject("Scripting.FileSystemObject") Name = FSO.GetBaseName("Q:aaabredMySuperFile.txt") MsgBox Name
3.11. GetExtensionName
Синтаксис:
GetExtensionName(<Path>)
Назначение: возвращает расширение последнего компонента в заданном пути.
Параметры:
- <Path> — строка, путь.
Пример:
Set FSO = CreateObject("Scripting.FileSystemObject") Name = FSO.GetExtensionName("Q:aaabredMySuperFile.txt") MsgBox Name
3.12. GetFileName
Синтаксис:
GetFileName(<Path>)
Назначение: возвращает имя (с расширением) последнего компонента в заданном пути.
Параметры:
- <Path> — строка, путь.
Пример:
Set FSO = CreateObject("Scripting.FileSystemObject") Name = FSO.GetFileName("Q:aaabredMySuperFile.txt") MsgBox Name
3.13. GetParentFolderName
Синтаксис:
GetParentFolderName(<Path>)
Назначение: возвращает путь к последнему компоненту в заданном пути (его каталог).
Параметры:
- <Path> — строка, путь.
Пример:
Set FSO = CreateObject("Scripting.FileSystemObject") Name = FSO.GetParentFolderName("Q:aaabredMySuperFile.txt") MsgBox Name
3.14. GetDriveName
Синтаксис:
GetDriveName(<Path>)
Назначение: возвращает имя диска в заданном пути.
Параметры:
- <Path> — строка, путь.
Пример:
Set FSO = CreateObject("Scripting.FileSystemObject") Name = FSO.GetDriveName("X:aaabredMySuperFile.txt") MsgBox Name
3.15. DriveExists
Синтаксис:
DriveExists(<Drivespec>)
Назначение: возвращает True, если указанный диск сущесвтвует, и False в противном случае.
Параметры:
- <Drivespec> — строка, путь.
Пример:
Set FSO = CreateObject("Scripting.FileSystemObject") Disk = "A:" MsgBox "Диск " & Disk & " существует = " & FSO.DriveExists(Disk) Disk = "Q:" MsgBox "Диск " & Disk & " существует = " & FSO.DriveExists(Disk)
3.16. FileExists
Синтаксис:
FileExists(<Filespec>)
Назначение: возвращает True, если указанный файл сущесвтвует, и False в противном случае.
Параметры:
- <Filespec> — строка, путь.
Пример:
Set FSO = CreateObject("Scripting.FileSystemObject") File = "C:Program Files1Cv77BIN1cv7s.exe" MsgBox "Файл " & File & " существует = " & FSO.FileExists(File) File = "С:1.txt" MsgBox "Файл " & File & " существует = " & FSO.FileExists(File)
3.17. FolderExists
Синтаксис:
FolderExists(<Folderspec>)
Назначение: возвращает True, если указанный каталог сущесвтвует, и False в противном случае.
Параметры:
- <Folderspec> — строка, путь.
Пример:
Set FSO = CreateObject("Scripting.FileSystemObject") Folder = "C:Program Files" MsgBox "Каталог " & Folder & " существует = " & FSO.FolderExists(Folder) Folder = "С:ProgramFiles" MsgBox "Каталог " & Folder & " существует = " & FSO.FolderExists(Folder)
3.18. GetDrive
Синтаксис:
GetDrive(<Folderspec>)
Назначение: возвращает объект «Drive» по указанному имени или пути.
Параметры:
- <Folderspec> — строка, имя диска или путь к корневому каталогу диска, возможно UNC-путь.
Пример:
Set FSO = CreateObject("Scripting.FileSystemObject") Set Drive = FSO.GetDrive("C:") MsgBox Drive.FileSystem Set Drive = FSO.GetDrive("C:") MsgBox Drive.FileSystem Set Drive = FSO.GetDrive("\Server1C_Predpr") MsgBox Drive.FileSystem
3.19. GetFile
Синтаксис:
GetFile(<Filespec>)
Назначение: возвращает объект «File» по указанному пути.
Параметры:
- <Filespec> — строка, путь.
Описание: если файл не существует, произойдёт ошибка.
Пример:
Set FSO = CreateObject("Scripting.FileSystemObject") Set File = FSO.GetFile("C:autoexec.bat") MsgBox File.Size
3.20. GetFolder
Синтаксис:
GetFolder(<Folderspec>)
Назначение: возвращает объект «Folder» по указанному пути.
Параметры:
- <Folderspec> — строка, путь.
Описание: если каталог не существует, произойдёт ошибка.
Пример:
Set FSO = CreateObject("Scripting.FileSystemObject") Set Folder = FSO.GetFolder("C:Program Files") MsgBox Folder.ShortName
3.21. GetSpecialFolder
Синтаксис:
GetSpecialFolder(<Folderspec>)
Назначение: возвращает объект «Folder» для некоторых специальных папок Windows.
Параметры:
- <Folderspec> — число, определяет специальную папку. Возможные значения:
- 0 — Каталог Windows.
- 1 — Системный каталог библиотек и драйверов.
- 2 — Каталог временных файлов, путь к которому хранится в переменной среды «TMP».
Описание: если каталог не существует, произойдёт ошибка.
Пример:
Set FSO = CreateObject("Scripting.FileSystemObject") For i=0 To 2 Set Folder = FSO.GetSpecialFolder(i) MsgBox Folder.Path Next
3.22. GetTempName
Синтаксис:
GetTempName()
Назначение: возвращает случайным образом сгенерированное имя файла, которое может быть использовано для создания временного файла.
Параметры: нет.
Пример:
Set FSO = CreateObject("Scripting.FileSystemObject") MsgBox FSO.GetTempName()
3.23. CreateTextFile
Синтаксис:
CreateTextFile(<Filename>,<Overwrite>,<Unicode>)
Назначение: создаёт новый текстовый файл и возвращает объект «TextStream», указывающий на него.
Параметры:
- <Filename> — строка, путь к файлу.
- <Overwrite> — необязательный, булево (число). Перезаписывать файл, если он существует (True), или нет (False). По умолчанию — False. Если указано False и файл существует — произойдёт ошибка.
- <Unicode> — необязательный, булево (число). Файл в формате Unicode (True), или ASCII (False). По умолчанию — False.
Пример:
Set FSO = CreateObject("Scripting.FileSystemObject") Set TextStream = FSO.CreateTextFile("C:Test.txt")
3.24. OpenTextFile
Синтаксис:
OpenTextFile(<Filename>,<Iomode>,<Create>,<Format>)
Назначение: открывает текстовый файл и возвращает объект «TextStream», указывающий на него.
Параметры:
- <Filename> — строка, путь к файлу.
- <Iomode> — необязательный, число. Возможные значения:
- 1 — Открыть файл только для чтения.
- 2 — Открыть файл для записи. Если файл уже существовал, его содержимое теряется.
- 8 — Открыть файл для добавления. Если файл уже существовал, информация будет дописываться в конец файла.
- <Create> — необязательный, булево (число). Создавать файл, если он не существует (True), или нет (False). По умолчанию — False.
- <Format> — необязательный, число. Возможные значения:
- -2 — Открыть файл в формате, используемом системой по умолчанию.
- -1 — Открыть файл в формате Unicode.
- 0 — Открыть файл в формате ASCII (по умолчанию).
Пример:
Set FSO = CreateObject("Scripting.FileSystemObject") Set TextStream = FSO.OpenTextFile("C:Test.txt", 2, True)
3.25. GetStandardStream
Синтаксис:
GetStandardStream(<StandardStreamType>,<Unicode>)
Назначение: возвращает объект «TextStream», ассоциированный с потоком «StdIn», «StdOut» или «StdErr».
Параметры:
- <StandardStreamType> — число, определяет поток. Возможные значения:
- 0 — StdIn.
- 1 — StdOut.
- 2 — StdErr.
- <Unicode> — необязательный, булево (число). True — формат Unicode, False — ASCII. По умолчанию — False.
Описание: метод применим при запуске административного скрипта в консоли с помощью CScript.exe.
Пример:
Set FSO = CreateObject("Scripting.FileSystemObject") Set stdout = fso.GetStandardStream(1) stdout.WriteLine "Hello, VBScript."
3.26. GetFileVersion
Синтаксис:
GetFileVersion(<Path>)
Назначение: возвращает номер версии исполняемого файла (строка).
Параметры:
- <Path> — строка, путь к файлу.
Описание: метод возвращает информацию, которую можно просмотреть на вкладке «Версия» палитры свойств файла в проводнике.
Пример:
Set FSO = CreateObject("Scripting.FileSystemObject") MsgBox FSO.GetFileVersion("C:Program Files1Cv77BIN1cv7s.exe") MsgBox FSO.GetFileVersion("C:Program Files1cv8bin1cv8.exe")
4. Объект Drive
4.1. Создание объекта
Пример:
Set FSO = CreateObject("Scripting.FileSystemObject") Set DriveC = FSO.Drives.Item("C:")
4.2. Свойства
4.2.1. AvailableSpace
Синтаксис:
AvailableSpace
Возвращаемое значение: число — количество доступного для пользователя места на диске в байтах.
Замечание: только чтение.
Пример:
Set FSO = CreateObject("Scripting.FileSystemObject") Set DriveC = FSO.GetDrive("C:") Str = "Диск C:" & vbCrLf & _ "AvailableSpace: " & DriveC.AvailableSpace & vbCrLf & _ "DriveLetter: " & DriveC.DriveLetter & vbCrLf & _ "DriveType: " & DriveC.DriveType & vbCrLf & _ "FileSystem: " & DriveC.FileSystem & vbCrLf & _ "FreeSpace: " & DriveC.FreeSpace & vbCrLf & _ "IsReady: " & DriveC.IsReady & vbCrLf & _ "Path: " & DriveC.Path & vbCrLf & _ "RootFolder (Path): " & DriveC.RootFolder.Path & vbCrLf & _ "SerialNumber: " & DriveC.SerialNumber & vbCrLf & _ "ShareName: " & DriveC.ShareName & vbCrLf & _ "TotalSize: " & DriveC.TotalSize & vbCrLf & _ "VolumeName: " & DriveC.VolumeName MsgBox Str
4.2.2. DriveLetter
Синтаксис:
DriveLetter
Возвращаемое значение: строка — буква, ассоциированная с ресурсом.
Замечание: только чтение.
Пример:
Set FSO = CreateObject("Scripting.FileSystemObject") Set DriveC = FSO.GetDrive("C:") Str = "Диск C:" & vbCrLf & _ "AvailableSpace: " & DriveC.AvailableSpace & vbCrLf & _ "DriveLetter: " & DriveC.DriveLetter & vbCrLf & _ "DriveType: " & DriveC.DriveType & vbCrLf & _ "FileSystem: " & DriveC.FileSystem & vbCrLf & _ "FreeSpace: " & DriveC.FreeSpace & vbCrLf & _ "IsReady: " & DriveC.IsReady & vbCrLf & _ "Path: " & DriveC.Path & vbCrLf & _ "RootFolder (Path): " & DriveC.RootFolder.Path & vbCrLf & _ "SerialNumber: " & DriveC.SerialNumber & vbCrLf & _ "ShareName: " & DriveC.ShareName & vbCrLf & _ "TotalSize: " & DriveC.TotalSize & vbCrLf & _ "VolumeName: " & DriveC.VolumeName MsgBox Str
4.2.3. DriveType
Синтаксис:
DriveType
Возвращаемое значение: число — определяет тип ресурса. Возможные значения:
- 0 — неизвестное устройство.
- 1 — устройство со сменным носителем.
- 2 — жёсткий диск.
- 3 — сетевой диск.
- 4 — CD-ROM.
- 5 — RAM-диск.
Замечание: только чтение.
Пример:
Set FSO = CreateObject("Scripting.FileSystemObject") Set DriveC = FSO.GetDrive("C:") Str = "Диск C:" & vbCrLf & _ "AvailableSpace: " & DriveC.AvailableSpace & vbCrLf & _ "DriveLetter: " & DriveC.DriveLetter & vbCrLf & _ "DriveType: " & DriveC.DriveType & vbCrLf & _ "FileSystem: " & DriveC.FileSystem & vbCrLf & _ "FreeSpace: " & DriveC.FreeSpace & vbCrLf & _ "IsReady: " & DriveC.IsReady & vbCrLf & _ "Path: " & DriveC.Path & vbCrLf & _ "RootFolder (Path): " & DriveC.RootFolder.Path & vbCrLf & _ "SerialNumber: " & DriveC.SerialNumber & vbCrLf & _ "ShareName: " & DriveC.ShareName & vbCrLf & _ "TotalSize: " & DriveC.TotalSize & vbCrLf & _ "VolumeName: " & DriveC.VolumeName MsgBox Str
4.2.4. FileSystem
Синтаксис:
FileSystem
Возвращаемое значение: cтрока — тип файловой системы (FAT, NTFS или CDFS).
Замечание: только чтение.
Пример:
Set FSO = CreateObject("Scripting.FileSystemObject") Set DriveC = FSO.GetDrive("C:") Str = "Диск C:" & vbCrLf & _ "AvailableSpace: " & DriveC.AvailableSpace & vbCrLf & _ "DriveLetter: " & DriveC.DriveLetter & vbCrLf & _ "DriveType: " & DriveC.DriveType & vbCrLf & _ "FileSystem: " & DriveC.FileSystem & vbCrLf & _ "FreeSpace: " & DriveC.FreeSpace & vbCrLf & _ "IsReady: " & DriveC.IsReady & vbCrLf & _ "Path: " & DriveC.Path & vbCrLf & _ "RootFolder (Path): " & DriveC.RootFolder.Path & vbCrLf & _ "SerialNumber: " & DriveC.SerialNumber & vbCrLf & _ "ShareName: " & DriveC.ShareName & vbCrLf & _ "TotalSize: " & DriveC.TotalSize & vbCrLf & _ "VolumeName: " & DriveC.VolumeName MsgBox Str
4.2.5. FreeSpace
Синтаксис:
FreeSpace
Возвращаемое значение: число — количество свободного места на диске в байтах.
Замечание: только чтение.
Пример:
Set FSO = CreateObject("Scripting.FileSystemObject") Set DriveC = FSO.GetDrive("C:") Str = "Диск C:" & vbCrLf & _ "AvailableSpace: " & DriveC.AvailableSpace & vbCrLf & _ "DriveLetter: " & DriveC.DriveLetter & vbCrLf & _ "DriveType: " & DriveC.DriveType & vbCrLf & _ "FileSystem: " & DriveC.FileSystem & vbCrLf & _ "FreeSpace: " & DriveC.FreeSpace & vbCrLf & _ "IsReady: " & DriveC.IsReady & vbCrLf & _ "Path: " & DriveC.Path & vbCrLf & _ "RootFolder (Path): " & DriveC.RootFolder.Path & vbCrLf & _ "SerialNumber: " & DriveC.SerialNumber & vbCrLf & _ "ShareName: " & DriveC.ShareName & vbCrLf & _ "TotalSize: " & DriveC.TotalSize & vbCrLf & _ "VolumeName: " & DriveC.VolumeName MsgBox Str
4.2.6. IsReady
Синтаксис:
IsReady
Возвращаемое значение: булево (число) — True, если устройство готово, иначе — False. Актуально для устройства со сменным носителем или CD-ROM.
Замечание: только чтение.
Пример:
Set FSO = CreateObject("Scripting.FileSystemObject") Set DriveC = FSO.GetDrive("C:") Str = "Диск C:" & vbCrLf & _ "AvailableSpace: " & DriveC.AvailableSpace & vbCrLf & _ "DriveLetter: " & DriveC.DriveLetter & vbCrLf & _ "DriveType: " & DriveC.DriveType & vbCrLf & _ "FileSystem: " & DriveC.FileSystem & vbCrLf & _ "FreeSpace: " & DriveC.FreeSpace & vbCrLf & _ "IsReady: " & DriveC.IsReady & vbCrLf & _ "Path: " & DriveC.Path & vbCrLf & _ "RootFolder (Path): " & DriveC.RootFolder.Path & vbCrLf & _ "SerialNumber: " & DriveC.SerialNumber & vbCrLf & _ "ShareName: " & DriveC.ShareName & vbCrLf & _ "TotalSize: " & DriveC.TotalSize & vbCrLf & _ "VolumeName: " & DriveC.VolumeName MsgBox Str
4.2.7. Path
Синтаксис:
Path
Возвращаемое значение: строка — путь к диску (например, «C:», но не «C:»).
Замечание: только чтение.
Пример:
Set FSO = CreateObject("Scripting.FileSystemObject") Set DriveC = FSO.GetDrive("C:") Str = "Диск C:" & vbCrLf & _ "AvailableSpace: " & DriveC.AvailableSpace & vbCrLf & _ "DriveLetter: " & DriveC.DriveLetter & vbCrLf & _ "DriveType: " & DriveC.DriveType & vbCrLf & _ "FileSystem: " & DriveC.FileSystem & vbCrLf & _ "FreeSpace: " & DriveC.FreeSpace & vbCrLf & _ "IsReady: " & DriveC.IsReady & vbCrLf & _ "Path: " & DriveC.Path & vbCrLf & _ "RootFolder (Path): " & DriveC.RootFolder.Path & vbCrLf & _ "SerialNumber: " & DriveC.SerialNumber & vbCrLf & _ "ShareName: " & DriveC.ShareName & vbCrLf & _ "TotalSize: " & DriveC.TotalSize & vbCrLf & _ "VolumeName: " & DriveC.VolumeName MsgBox Str
4.2.8. RootFolder
Синтаксис:
RootFolder
Возвращаемое значение: объект «Folder», соответствующий корневому каталогу диска.
Замечание: только чтение.
Пример:
Set FSO = CreateObject("Scripting.FileSystemObject") Set DriveC = FSO.GetDrive("C:") Str = "Диск C:" & vbCrLf & _ "AvailableSpace: " & DriveC.AvailableSpace & vbCrLf & _ "DriveLetter: " & DriveC.DriveLetter & vbCrLf & _ "DriveType: " & DriveC.DriveType & vbCrLf & _ "FileSystem: " & DriveC.FileSystem & vbCrLf & _ "FreeSpace: " & DriveC.FreeSpace & vbCrLf & _ "IsReady: " & DriveC.IsReady & vbCrLf & _ "Path: " & DriveC.Path & vbCrLf & _ "RootFolder (Path): " & DriveC.RootFolder.Path & vbCrLf & _ "SerialNumber: " & DriveC.SerialNumber & vbCrLf & _ "ShareName: " & DriveC.ShareName & vbCrLf & _ "TotalSize: " & DriveC.TotalSize & vbCrLf & _ "VolumeName: " & DriveC.VolumeName MsgBox Str
4.2.9. SerialNumber
Синтаксис:
SerialNumber
Возвращаемое значение: число — десятичный серийный номер диска.
Замечание: только чтение.
Пример:
Set FSO = CreateObject("Scripting.FileSystemObject") Set DriveC = FSO.GetDrive("C:") Str = "Диск C:" & vbCrLf & _ "AvailableSpace: " & DriveC.AvailableSpace & vbCrLf & _ "DriveLetter: " & DriveC.DriveLetter & vbCrLf & _ "DriveType: " & DriveC.DriveType & vbCrLf & _ "FileSystem: " & DriveC.FileSystem & vbCrLf & _ "FreeSpace: " & DriveC.FreeSpace & vbCrLf & _ "IsReady: " & DriveC.IsReady & vbCrLf & _ "Path: " & DriveC.Path & vbCrLf & _ "RootFolder (Path): " & DriveC.RootFolder.Path & vbCrLf & _ "SerialNumber: " & DriveC.SerialNumber & vbCrLf & _ "ShareName: " & DriveC.ShareName & vbCrLf & _ "TotalSize: " & DriveC.TotalSize & vbCrLf & _ "VolumeName: " & DriveC.VolumeName MsgBox Str
Синтаксис:
ShareName
Возвращаемое значение: строка — сетевое имя диска, если диск сетевой (иначе — пустая строка).
Замечание: только чтение.
Пример:
Set FSO = CreateObject("Scripting.FileSystemObject") Set DriveC = FSO.GetDrive("C:") Str = "Диск C:" & vbCrLf & _ "AvailableSpace: " & DriveC.AvailableSpace & vbCrLf & _ "DriveLetter: " & DriveC.DriveLetter & vbCrLf & _ "DriveType: " & DriveC.DriveType & vbCrLf & _ "FileSystem: " & DriveC.FileSystem & vbCrLf & _ "FreeSpace: " & DriveC.FreeSpace & vbCrLf & _ "IsReady: " & DriveC.IsReady & vbCrLf & _ "Path: " & DriveC.Path & vbCrLf & _ "RootFolder (Path): " & DriveC.RootFolder.Path & vbCrLf & _ "SerialNumber: " & DriveC.SerialNumber & vbCrLf & _ "ShareName: " & DriveC.ShareName & vbCrLf & _ "TotalSize: " & DriveC.TotalSize & vbCrLf & _ "VolumeName: " & DriveC.VolumeName MsgBox Str
4.2.11. TotalSize
Синтаксис:
TotalSize
Возвращаемое значение: число — общий объём диска в байтах.
Замечание: только чтение.
Пример:
Set FSO = CreateObject("Scripting.FileSystemObject") Set DriveC = FSO.GetDrive("C:") Str = "Диск C:" & vbCrLf & _ "AvailableSpace: " & DriveC.AvailableSpace & vbCrLf & _ "DriveLetter: " & DriveC.DriveLetter & vbCrLf & _ "DriveType: " & DriveC.DriveType & vbCrLf & _ "FileSystem: " & DriveC.FileSystem & vbCrLf & _ "FreeSpace: " & DriveC.FreeSpace & vbCrLf & _ "IsReady: " & DriveC.IsReady & vbCrLf & _ "Path: " & DriveC.Path & vbCrLf & _ "RootFolder (Path): " & DriveC.RootFolder.Path & vbCrLf & _ "SerialNumber: " & DriveC.SerialNumber & vbCrLf & _ "ShareName: " & DriveC.ShareName & vbCrLf & _ "TotalSize: " & DriveC.TotalSize & vbCrLf & _ "VolumeName: " & DriveC.VolumeName MsgBox Str
4.2.12. VolumeName
Синтаксис:
VolumeName
Возвращаемое значение: строка — метка тома диска.
Замечание: чтение и запись.
Пример:
Set FSO = CreateObject("Scripting.FileSystemObject") Set DriveC = FSO.GetDrive("C:") Str = "Диск C:" & vbCrLf & _ "AvailableSpace: " & DriveC.AvailableSpace & vbCrLf & _ "DriveLetter: " & DriveC.DriveLetter & vbCrLf & _ "DriveType: " & DriveC.DriveType & vbCrLf & _ "FileSystem: " & DriveC.FileSystem & vbCrLf & _ "FreeSpace: " & DriveC.FreeSpace & vbCrLf & _ "IsReady: " & DriveC.IsReady & vbCrLf & _ "Path: " & DriveC.Path & vbCrLf & _ "RootFolder (Path): " & DriveC.RootFolder.Path & vbCrLf & _ "SerialNumber: " & DriveC.SerialNumber & vbCrLf & _ "ShareName: " & DriveC.ShareName & vbCrLf & _ "TotalSize: " & DriveC.TotalSize & vbCrLf & _ "VolumeName: " & DriveC.VolumeName MsgBox Str
5. Объект File
5.1. Создание объекта
Пример №1:
Set FSO = CreateObject("Scripting.FileSystemObject") Set File = FSO.GetFile("C:autoexec.bat")
Пример №2:
Set FSO = CreateObject("Scripting.FileSystemObject") Set Folder = FSO.GetFolder("C:") Set File = Folder.Files("autoexec.bat")
Пример №3:
Set FSO = CreateObject("Scripting.FileSystemObject") Set Folder = FSO.GetFolder("C:") Set File = Folder.Files.Item("autoexec.bat")
5.2. Свойства
5.2.1. Attributes
Синтаксис:
Attributes
Возвращаемое значение: число, набор флагов атрибутов файла. Флаги:
- 0 — Normal. Обычный файл (нет атрибутов).
- 1 — ReadOnly. Файл только для чтения. Чтение и запись.
- 2 — Hidden. Скрытый. Чтение и запись.
- 4 — System. Системный. Чтение и запись.
- 8 — Volume. Диск. Только чтение.
- 16 — Directory. Папка или файл. Только чтение.
- 32 — Archive. Архивный. Чтение и запись.
- 1024 — Alias. Ссылка или ярлык. Только чтение.
- 2048 — Compressed. Сжатый. Только чтение.
Замечание: чтение и запись или только чтение, в зависимости от атрибута.
Пример:
Set FSO = CreateObject("Scripting.FileSystemObject") Set File = FSO.GetFile("C:autoexec.bat") Attrs = File.Attributes Set Dict = CreateObject("Scripting.Dictionary") Dict.Add "ReadOnly", 0 Dict.Add "Hidden", 0 Dict.Add "System", 0 Dict.Add "Volume", 0 Dict.Add "Directory", 0 Dict.Add "Archive", 0 Dict.Add "Alias", 0 Dict.Add "Compressed", 0 If Attrs And 2048 Then Dict.Item("Compressed") = 1 End If If Attrs And 1024 Then Dict.Item("Alias") = 1 End If If Attrs And 32 Then Dict.Item("Archive") = 1 End If If Attrs And 16 Then Dict.Item("Directory") = 1 End If If Attrs And 8 Then Dict.Item("Volume") = 1 End If If Attrs And 4 Then Dict.Item("System") = 1 End If If Attrs And 2 Then Dict.Item("Hidden") = 1 End If If Attrs And 1 Then Dict.Item("ReadOnly") = 1 End If Str = "Атрибуты файла """ & File.Path & """:" & vbCrLf For Each Attr In Dict Str = Str & Attr & " = " & Dict.Item(Attr) & vbCrLf Next MsgBox Str
5.2.2. DateCreated
Синтаксис:
DateCreated
Возвращаемое значение: дата создания файла.
Замечание: только чтение.
Пример:
Set FSO = CreateObject("Scripting.FileSystemObject") Set File = FSO.GetFile("C:autoexec.bat") Str = vbNullString Str = Str & "Дата создания - " & File.DateCreated & vbCrLf Str = Str & "Дата последнего доступа - " & File.DateLastAccessed & vbCrLf Str = Str & "Дата последней модификации - " & File.DateLastModified & vbCrLf Str = Str & "Диск - " & File.Drive.DriveLetter & vbCrLf Str = Str & "Имя - " & File.Name & vbCrLf Str = Str & "Родительский каталог - " & File.ParentFolder.Path & vbCrLf Str = Str & "Путь - " & File.Path & vbCrLf Str = Str & "Короткое имя - " & File.ShortName & vbCrLf Str = Str & "Путь в формате 8.3 - " & File.ShortPath & vbCrLf Str = Str & "Размер - " & File.Size & vbCrLf Str = Str & "Тип файла - " & File.Type MsgBox Str
5.2.3. DateLastAccessed
Синтаксис:
DateLastAccessed
Возвращаемое значение: дата последнего доступа к файлу.
Замечание: только чтение.
Пример:
Set FSO = CreateObject("Scripting.FileSystemObject") Set File = FSO.GetFile("C:autoexec.bat") Str = vbNullString Str = Str & "Дата создания - " & File.DateCreated & vbCrLf Str = Str & "Дата последнего доступа - " & File.DateLastAccessed & vbCrLf Str = Str & "Дата последней модификации - " & File.DateLastModified & vbCrLf Str = Str & "Диск - " & File.Drive.DriveLetter & vbCrLf Str = Str & "Имя - " & File.Name & vbCrLf Str = Str & "Родительский каталог - " & File.ParentFolder.Path & vbCrLf Str = Str & "Путь - " & File.Path & vbCrLf Str = Str & "Короткое имя - " & File.ShortName & vbCrLf Str = Str & "Путь в формате 8.3 - " & File.ShortPath & vbCrLf Str = Str & "Размер - " & File.Size & vbCrLf Str = Str & "Тип файла - " & File.Type MsgBox Str
5.2.4. DateLastModified
Синтаксис:
DateLastModified
Возвращаемое значение: дата последней модификации файла.
Замечание: только чтение.
Пример:
Set FSO = CreateObject("Scripting.FileSystemObject") Set File = FSO.GetFile("C:autoexec.bat") Str = vbNullString Str = Str & "Дата создания - " & File.DateCreated & vbCrLf Str = Str & "Дата последнего доступа - " & File.DateLastAccessed & vbCrLf Str = Str & "Дата последней модификации - " & File.DateLastModified & vbCrLf Str = Str & "Диск - " & File.Drive.DriveLetter & vbCrLf Str = Str & "Имя - " & File.Name & vbCrLf Str = Str & "Родительский каталог - " & File.ParentFolder.Path & vbCrLf Str = Str & "Путь - " & File.Path & vbCrLf Str = Str & "Короткое имя - " & File.ShortName & vbCrLf Str = Str & "Путь в формате 8.3 - " & File.ShortPath & vbCrLf Str = Str & "Размер - " & File.Size & vbCrLf Str = Str & "Тип файла - " & File.Type MsgBox Str
5.2.5. Drive
Синтаксис:
Drive
Возвращаемое значение: объект «Drive» диска, на котором находится файл.
Замечание: только чтение.
Пример:
Set FSO = CreateObject("Scripting.FileSystemObject") Set File = FSO.GetFile("C:autoexec.bat") Str = vbNullString Str = Str & "Дата создания - " & File.DateCreated & vbCrLf Str = Str & "Дата последнего доступа - " & File.DateLastAccessed & vbCrLf Str = Str & "Дата последней модификации - " & File.DateLastModified & vbCrLf Str = Str & "Диск - " & File.Drive.DriveLetter & vbCrLf Str = Str & "Имя - " & File.Name & vbCrLf Str = Str & "Родительский каталог - " & File.ParentFolder.Path & vbCrLf Str = Str & "Путь - " & File.Path & vbCrLf Str = Str & "Короткое имя - " & File.ShortName & vbCrLf Str = Str & "Путь в формате 8.3 - " & File.ShortPath & vbCrLf Str = Str & "Размер - " & File.Size & vbCrLf Str = Str & "Тип файла - " & File.Type MsgBox Str
5.2.6. Name
Синтаксис:
Name
Возвращаемое значение: имя файла.
Замечание: чтение и запись.
Пример:
Set FSO = CreateObject("Scripting.FileSystemObject") Set File = FSO.GetFile("C:autoexec.bat") Str = vbNullString Str = Str & "Дата создания - " & File.DateCreated & vbCrLf Str = Str & "Дата последнего доступа - " & File.DateLastAccessed & vbCrLf Str = Str & "Дата последней модификации - " & File.DateLastModified & vbCrLf Str = Str & "Диск - " & File.Drive.DriveLetter & vbCrLf Str = Str & "Имя - " & File.Name & vbCrLf Str = Str & "Родительский каталог - " & File.ParentFolder.Path & vbCrLf Str = Str & "Путь - " & File.Path & vbCrLf Str = Str & "Короткое имя - " & File.ShortName & vbCrLf Str = Str & "Путь в формате 8.3 - " & File.ShortPath & vbCrLf Str = Str & "Размер - " & File.Size & vbCrLf Str = Str & "Тип файла - " & File.Type MsgBox Str
5.2.7. ParentFolder
Синтаксис:
ParentFolder
Возвращаемое значение: объект «Folder» родительского каталога.
Замечание: только чтение.
Пример:
Set FSO = CreateObject("Scripting.FileSystemObject") Set File = FSO.GetFile("C:autoexec.bat") Str = vbNullString Str = Str & "Дата создания - " & File.DateCreated & vbCrLf Str = Str & "Дата последнего доступа - " & File.DateLastAccessed & vbCrLf Str = Str & "Дата последней модификации - " & File.DateLastModified & vbCrLf Str = Str & "Диск - " & File.Drive.DriveLetter & vbCrLf Str = Str & "Имя - " & File.Name & vbCrLf Str = Str & "Родительский каталог - " & File.ParentFolder.Path & vbCrLf Str = Str & "Путь - " & File.Path & vbCrLf Str = Str & "Короткое имя - " & File.ShortName & vbCrLf Str = Str & "Путь в формате 8.3 - " & File.ShortPath & vbCrLf Str = Str & "Размер - " & File.Size & vbCrLf Str = Str & "Тип файла - " & File.Type MsgBox Str
5.2.8. Path
Синтаксис:
Path
Возвращаемое значение: полный путь к файлу.
Замечание: только чтение.
Пример:
Set FSO = CreateObject("Scripting.FileSystemObject") Set File = FSO.GetFile("C:autoexec.bat") Str = vbNullString Str = Str & "Дата создания - " & File.DateCreated & vbCrLf Str = Str & "Дата последнего доступа - " & File.DateLastAccessed & vbCrLf Str = Str & "Дата последней модификации - " & File.DateLastModified & vbCrLf Str = Str & "Диск - " & File.Drive.DriveLetter & vbCrLf Str = Str & "Имя - " & File.Name & vbCrLf Str = Str & "Родительский каталог - " & File.ParentFolder.Path & vbCrLf Str = Str & "Путь - " & File.Path & vbCrLf Str = Str & "Короткое имя - " & File.ShortName & vbCrLf Str = Str & "Путь в формате 8.3 - " & File.ShortPath & vbCrLf Str = Str & "Размер - " & File.Size & vbCrLf Str = Str & "Тип файла - " & File.Type MsgBox Str
5.2.9. ShortName
Синтаксис:
ShortName
Возвращаемое значение: короткое имя файла в формате 8.3.
Замечание: только чтение.
Пример:
Set FSO = CreateObject("Scripting.FileSystemObject") Set File = FSO.GetFile("C:autoexec.bat") Str = vbNullString Str = Str & "Дата создания - " & File.DateCreated & vbCrLf Str = Str & "Дата последнего доступа - " & File.DateLastAccessed & vbCrLf Str = Str & "Дата последней модификации - " & File.DateLastModified & vbCrLf Str = Str & "Диск - " & File.Drive.DriveLetter & vbCrLf Str = Str & "Имя - " & File.Name & vbCrLf Str = Str & "Родительский каталог - " & File.ParentFolder.Path & vbCrLf Str = Str & "Путь - " & File.Path & vbCrLf Str = Str & "Короткое имя - " & File.ShortName & vbCrLf Str = Str & "Путь в формате 8.3 - " & File.ShortPath & vbCrLf Str = Str & "Размер - " & File.Size & vbCrLf Str = Str & "Тип файла - " & File.Type MsgBox Str
5.2.10. ShortPath
Синтаксис:
ShortPath
Возвращаемое значение: короткий путь к файлу в формате 8.3.
Замечание: только чтение.
Пример:
Set FSO = CreateObject("Scripting.FileSystemObject") Set File = FSO.GetFile("C:autoexec.bat") Str = vbNullString Str = Str & "Дата создания - " & File.DateCreated & vbCrLf Str = Str & "Дата последнего доступа - " & File.DateLastAccessed & vbCrLf Str = Str & "Дата последней модификации - " & File.DateLastModified & vbCrLf Str = Str & "Диск - " & File.Drive.DriveLetter & vbCrLf Str = Str & "Имя - " & File.Name & vbCrLf Str = Str & "Родительский каталог - " & File.ParentFolder.Path & vbCrLf Str = Str & "Путь - " & File.Path & vbCrLf Str = Str & "Короткое имя - " & File.ShortName & vbCrLf Str = Str & "Путь в формате 8.3 - " & File.ShortPath & vbCrLf Str = Str & "Размер - " & File.Size & vbCrLf Str = Str & "Тип файла - " & File.Type MsgBox Str
5.2.11. Size
Синтаксис:
Size
Возвращаемое значение: размер файла в байтах.
Замечание: только чтение.
Пример:
Set FSO = CreateObject("Scripting.FileSystemObject") Set File = FSO.GetFile("C:autoexec.bat") Str = vbNullString Str = Str & "Дата создания - " & File.DateCreated & vbCrLf Str = Str & "Дата последнего доступа - " & File.DateLastAccessed & vbCrLf Str = Str & "Дата последней модификации - " & File.DateLastModified & vbCrLf Str = Str & "Диск - " & File.Drive.DriveLetter & vbCrLf Str = Str & "Имя - " & File.Name & vbCrLf Str = Str & "Родительский каталог - " & File.ParentFolder.Path & vbCrLf Str = Str & "Путь - " & File.Path & vbCrLf Str = Str & "Короткое имя - " & File.ShortName & vbCrLf Str = Str & "Путь в формате 8.3 - " & File.ShortPath & vbCrLf Str = Str & "Размер - " & File.Size & vbCrLf Str = Str & "Тип файла - " & File.Type MsgBox Str
5.2.12. Type
Синтаксис:
Type
Возвращаемое значение: тип файла. Информация, похожая на ту, которую можно увидеть в палитре свойств файла в проводнике.
Замечание: только чтение.
Пример:
Set FSO = CreateObject("Scripting.FileSystemObject") Set File = FSO.GetFile("C:autoexec.bat") Str = vbNullString Str = Str & "Дата создания - " & File.DateCreated & vbCrLf Str = Str & "Дата последнего доступа - " & File.DateLastAccessed & vbCrLf Str = Str & "Дата последней модификации - " & File.DateLastModified & vbCrLf Str = Str & "Диск - " & File.Drive.DriveLetter & vbCrLf Str = Str & "Имя - " & File.Name & vbCrLf Str = Str & "Родительский каталог - " & File.ParentFolder.Path & vbCrLf Str = Str & "Путь - " & File.Path & vbCrLf Str = Str & "Короткое имя - " & File.ShortName & vbCrLf Str = Str & "Путь в формате 8.3 - " & File.ShortPath & vbCrLf Str = Str & "Размер - " & File.Size & vbCrLf Str = Str & "Тип файла - " & File.Type MsgBox Str
5.3. Методы
5.3.1. Copy
Синтаксис:
Copy(<Destination>,<Overwrite>)
Назначение: копирует файл в указанное место.
Параметры:
- <Destination> — строка, путь (куда копировать).
- <Overwrite> — необязательный, булево (число). Заменять файл, если он существует (True), или нет (False)
Пример:
Set FSO = CreateObject("Scripting.FileSystemObject") Set File = FSO.GetFile("C:autoexec.bat") File.Copy "D:" File.Copy "D:Copy of autoexec.bat"
5.3.2. Move
Синтаксис:
Move(<Destination>)
Назначение: перемещает файл в указанное место.
Параметры:
- <Destination> — строка, путь (куда перемещать).
Пример:
Set FSO = CreateObject("Scripting.FileSystemObject") Set File = FSO.GetFile("C:autoexec.bat") File.Move "D:" 'File.Move "D:Copy of autoexec.bat"
5.3.3. Delete
Синтаксис:
Delete(<Force>)
Назначение: удаляет файл.
Параметры:
- <Force> — необязательный, булево (число). Удалять файл, если он имеет атрибут «только для чтения» (True), или нет (False).
Пример:
Set FSO = CreateObject("Scripting.FileSystemObject") Set File = FSO.GetFile("C:Test.txt") File.Delete
5.3.4. OpenAsTextStream
Синтаксис:
OpenAsTextStream(<Iomode>,<Format>)
Назначение: открывает текстовый файл и возвращает объект «TextStream», указывающий на него.
Параметры:
- <Iomode> — необязательный, число. Возможные значения:
- 1 — Открыть файл только для чтения.
- 2 — Открыть файл для записи. Если файл уже существовал, его содержимое теряется.
- 8 — Открыть файл для добавления. Если файл уже существовал, информация будет дописываться в конец файла.
- <Format> — необязательный, число. Возможные значения:
- -2 — Открыть файл в формате, используемом системой по умолчанию.
- -1 — Открыть файл в формате Unicode.
- 0 — Открыть файл в формате ASCII (по умолчанию).
Пример:
Set FSO = CreateObject("Scripting.FileSystemObject") Set File = FSO.GetFile("C:boot.ini") Set TextStream = File.OpenAsTextStream(1) MsgBox TextStream.ReadAll() TextStream.Close
6. Объект Folder
6.1. Создание объекта
Пример №1:
Set FSO = CreateObject("Scripting.FileSystemObject") Set Folder = FSO.GetFolder("C:Program Files")
Пример №2:
Set FSO = CreateObject("Scripting.FileSystemObject") Set Folder = FSO.GetSpecialFolder(0)
Пример №3:
Set FSO = CreateObject("Scripting.FileSystemObject") Set DriveC = FSO.GetDrive("C:") Set Folder = DriveC.RootFolder
Пример №4:
Set FSO = CreateObject("Scripting.FileSystemObject") Set Folder = FSO.GetFolder("C:Program Files") For Each SubFolder In Folder.SubFolders WScript.Echo SubFolder.Name Next
6.2. Свойства
6.2.1. Attributes
Синтаксис:
Attributes
Возвращаемое значение: число, набор флагов атрибутов папки. Флаги:
- 0 — Normal. Обычный файл (нет атрибутов).
- 1 — ReadOnly. Файл только для чтения. Чтение и запись.
- 2 — Hidden. Скрытый. Чтение и запись.
- 4 — System. Системный. Чтение и запись.
- 8 — Volume. Диск. Только чтение.
- 16 — Directory. Папка или файл. Только чтение.
- 32 — Archive. Архивный. Чтение и запись.
- 1024 — Alias. Ссылка или ярлык. Только чтение.
- 2048 — Compressed. Сжатый. Только чтение.
Замечание: чтение и запись или только чтение, в зависимости от атрибута.
Пример:
Set FSO = CreateObject("Scripting.FileSystemObject") Set Folder = FSO.GetFolder("C:Program Files") Attrs = Folder.Attributes Set Dict = CreateObject("Scripting.Dictionary") Dict.Add "ReadOnly", 0 Dict.Add "Hidden", 0 Dict.Add "System", 0 Dict.Add "Volume", 0 Dict.Add "Directory", 0 Dict.Add "Archive", 0 Dict.Add "Alias", 0 Dict.Add "Compressed", 0 If Attrs And 2048 Then Dict.Item("Compressed") = 1 End If If Attrs And 1024 Then Dict.Item("Alias") = 1 End If If Attrs And 32 Then Dict.Item("Archive") = 1 End If If Attrs And 16 Then Dict.Item("Directory") = 1 End If If Attrs And 8 Then Dict.Item("Volume") = 1 End If If Attrs And 4 Then Dict.Item("System") = 1 End If If Attrs And 2 Then Dict.Item("Hidden") = 1 End If If Attrs And 1 Then Dict.Item("ReadOnly") = 1 End If Str = "Атрибуты папки """ & Folder.Path & """:" & vbCrLf For Each Attr In Dict Str = Str & Attr & " = " & Dict.Item(Attr) & vbCrLf Next MsgBox Str
6.2.2. DateCreated
Синтаксис:
DateCreated
Возвращаемое значение: дата создания каталога.
Замечание: только чтение.
Пример:
Set FSO = CreateObject("Scripting.FileSystemObject") Set Folder = FSO.GetFolder("C:Program Files") Str = vbNullString Str = Str & "Дата создания - " & Folder.DateCreated & vbCrLf Str = Str & "Дата последнего доступа - " & Folder.DateLastAccessed & vbCrLf Str = Str & "Дата последней модификации - " & Folder.DateLastModified & vbCrLf Str = Str & "Диск - " & Folder.Drive.DriveLetter & vbCrLf Str = Str & "Это корневой каталог - " & Folder.IsRootFolder & vbCrLf Str = Str & "Имя - " & Folder.Name & vbCrLf Str = Str & "Родительский каталог - " & Folder.ParentFolder.Path & vbCrLf Str = Str & "Путь - " & Folder.Path & vbCrLf Str = Str & "Короткое имя - " & Folder.ShortName & vbCrLf Str = Str & "Путь в формате 8.3 - " & Folder.ShortPath & vbCrLf Str = Str & "Размер - " & Folder.Size & vbCrLf Str = Str & "Тип каталога - " & Folder.Type & vbCrLf MsgBox Str
6.2.3. DateLastAccessed
Синтаксис:
DateLastAccessed
Возвращаемое значение: дата последнего доступа к каталогу.
Замечание: только чтение.
Пример:
Set FSO = CreateObject("Scripting.FileSystemObject") Set Folder = FSO.GetFolder("C:Program Files") Str = vbNullString Str = Str & "Дата создания - " & Folder.DateCreated & vbCrLf Str = Str & "Дата последнего доступа - " & Folder.DateLastAccessed & vbCrLf Str = Str & "Дата последней модификации - " & Folder.DateLastModified & vbCrLf Str = Str & "Диск - " & Folder.Drive.DriveLetter & vbCrLf Str = Str & "Это корневой каталог - " & Folder.IsRootFolder & vbCrLf Str = Str & "Имя - " & Folder.Name & vbCrLf Str = Str & "Родительский каталог - " & Folder.ParentFolder.Path & vbCrLf Str = Str & "Путь - " & Folder.Path & vbCrLf Str = Str & "Короткое имя - " & Folder.ShortName & vbCrLf Str = Str & "Путь в формате 8.3 - " & Folder.ShortPath & vbCrLf Str = Str & "Размер - " & Folder.Size & vbCrLf Str = Str & "Тип каталога - " & Folder.Type & vbCrLf MsgBox Str
6.2.4. DateLastModified
Синтаксис:
DateLastModified
Возвращаемое значение: дата последней модификации каталога.
Замечание: только чтение.
Пример:
Set FSO = CreateObject("Scripting.FileSystemObject") Set Folder = FSO.GetFolder("C:Program Files") Str = vbNullString Str = Str & "Дата создания - " & Folder.DateCreated & vbCrLf Str = Str & "Дата последнего доступа - " & Folder.DateLastAccessed & vbCrLf Str = Str & "Дата последней модификации - " & Folder.DateLastModified & vbCrLf Str = Str & "Диск - " & Folder.Drive.DriveLetter & vbCrLf Str = Str & "Это корневой каталог - " & Folder.IsRootFolder & vbCrLf Str = Str & "Имя - " & Folder.Name & vbCrLf Str = Str & "Родительский каталог - " & Folder.ParentFolder.Path & vbCrLf Str = Str & "Путь - " & Folder.Path & vbCrLf Str = Str & "Короткое имя - " & Folder.ShortName & vbCrLf Str = Str & "Путь в формате 8.3 - " & Folder.ShortPath & vbCrLf Str = Str & "Размер - " & Folder.Size & vbCrLf Str = Str & "Тип каталога - " & Folder.Type & vbCrLf MsgBox Str
6.2.5. Drive
Синтаксис:
Drive
Возвращаемое значение: объект «Drive» диска, на котором находится каталог.
Замечание: только чтение.
Пример:
Set FSO = CreateObject("Scripting.FileSystemObject") Set Folder = FSO.GetFolder("C:Program Files") Str = vbNullString Str = Str & "Дата создания - " & Folder.DateCreated & vbCrLf Str = Str & "Дата последнего доступа - " & Folder.DateLastAccessed & vbCrLf Str = Str & "Дата последней модификации - " & Folder.DateLastModified & vbCrLf Str = Str & "Диск - " & Folder.Drive.DriveLetter & vbCrLf Str = Str & "Это корневой каталог - " & Folder.IsRootFolder & vbCrLf Str = Str & "Имя - " & Folder.Name & vbCrLf Str = Str & "Родительский каталог - " & Folder.ParentFolder.Path & vbCrLf Str = Str & "Путь - " & Folder.Path & vbCrLf Str = Str & "Короткое имя - " & Folder.ShortName & vbCrLf Str = Str & "Путь в формате 8.3 - " & Folder.ShortPath & vbCrLf Str = Str & "Размер - " & Folder.Size & vbCrLf Str = Str & "Тип каталога - " & Folder.Type & vbCrLf MsgBox Str
6.2.6. IsRootFolder
Синтаксис:
IsRootFolder
Возвращаемое значение: булево (число). Признак того, является ли каталог корневым.
Замечание: только чтение.
Пример:
Set FSO = CreateObject("Scripting.FileSystemObject") Set Folder = FSO.GetFolder("C:Program Files") Str = vbNullString Str = Str & "Дата создания - " & Folder.DateCreated & vbCrLf Str = Str & "Дата последнего доступа - " & Folder.DateLastAccessed & vbCrLf Str = Str & "Дата последней модификации - " & Folder.DateLastModified & vbCrLf Str = Str & "Диск - " & Folder.Drive.DriveLetter & vbCrLf Str = Str & "Это корневой каталог - " & Folder.IsRootFolder & vbCrLf Str = Str & "Имя - " & Folder.Name & vbCrLf Str = Str & "Родительский каталог - " & Folder.ParentFolder.Path & vbCrLf Str = Str & "Путь - " & Folder.Path & vbCrLf Str = Str & "Короткое имя - " & Folder.ShortName & vbCrLf Str = Str & "Путь в формате 8.3 - " & Folder.ShortPath & vbCrLf Str = Str & "Размер - " & Folder.Size & vbCrLf Str = Str & "Тип каталога - " & Folder.Type & vbCrLf MsgBox Str
6.2.7. Name
Синтаксис:
Name
Возвращаемое значение: имя каталога.
Замечание: чтение и запись.
Пример:
Set FSO = CreateObject("Scripting.FileSystemObject") Set Folder = FSO.GetFolder("C:Program Files") Str = vbNullString Str = Str & "Дата создания - " & Folder.DateCreated & vbCrLf Str = Str & "Дата последнего доступа - " & Folder.DateLastAccessed & vbCrLf Str = Str & "Дата последней модификации - " & Folder.DateLastModified & vbCrLf Str = Str & "Диск - " & Folder.Drive.DriveLetter & vbCrLf Str = Str & "Это корневой каталог - " & Folder.IsRootFolder & vbCrLf Str = Str & "Имя - " & Folder.Name & vbCrLf Str = Str & "Родительский каталог - " & Folder.ParentFolder.Path & vbCrLf Str = Str & "Путь - " & Folder.Path & vbCrLf Str = Str & "Короткое имя - " & Folder.ShortName & vbCrLf Str = Str & "Путь в формате 8.3 - " & Folder.ShortPath & vbCrLf Str = Str & "Размер - " & Folder.Size & vbCrLf Str = Str & "Тип каталога - " & Folder.Type & vbCrLf MsgBox Str
6.2.8. ParentFolder
Синтаксис:
ParentFolder
Возвращаемое значение: объект «Folder» родительского каталога.
Замечание: только чтение.
Пример:
Set FSO = CreateObject("Scripting.FileSystemObject") Set Folder = FSO.GetFolder("C:Program Files") Str = vbNullString Str = Str & "Дата создания - " & Folder.DateCreated & vbCrLf Str = Str & "Дата последнего доступа - " & Folder.DateLastAccessed & vbCrLf Str = Str & "Дата последней модификации - " & Folder.DateLastModified & vbCrLf Str = Str & "Диск - " & Folder.Drive.DriveLetter & vbCrLf Str = Str & "Это корневой каталог - " & Folder.IsRootFolder & vbCrLf Str = Str & "Имя - " & Folder.Name & vbCrLf Str = Str & "Родительский каталог - " & Folder.ParentFolder.Path & vbCrLf Str = Str & "Путь - " & Folder.Path & vbCrLf Str = Str & "Короткое имя - " & Folder.ShortName & vbCrLf Str = Str & "Путь в формате 8.3 - " & Folder.ShortPath & vbCrLf Str = Str & "Размер - " & Folder.Size & vbCrLf Str = Str & "Тип каталога - " & Folder.Type & vbCrLf MsgBox Str
6.2.9. Path
Синтаксис:
Path
Возвращаемое значение: полный путь к каталогу.
Замечание: только чтение.
Пример:
Set FSO = CreateObject("Scripting.FileSystemObject") Set Folder = FSO.GetFolder("C:Program Files") Str = vbNullString Str = Str & "Дата создания - " & Folder.DateCreated & vbCrLf Str = Str & "Дата последнего доступа - " & Folder.DateLastAccessed & vbCrLf Str = Str & "Дата последней модификации - " & Folder.DateLastModified & vbCrLf Str = Str & "Диск - " & Folder.Drive.DriveLetter & vbCrLf Str = Str & "Это корневой каталог - " & Folder.IsRootFolder & vbCrLf Str = Str & "Имя - " & Folder.Name & vbCrLf Str = Str & "Родительский каталог - " & Folder.ParentFolder.Path & vbCrLf Str = Str & "Путь - " & Folder.Path & vbCrLf Str = Str & "Короткое имя - " & Folder.ShortName & vbCrLf Str = Str & "Путь в формате 8.3 - " & Folder.ShortPath & vbCrLf Str = Str & "Размер - " & Folder.Size & vbCrLf Str = Str & "Тип каталога - " & Folder.Type & vbCrLf MsgBox Str
6.2.10. ShortName
Синтаксис:
ShortName
Возвращаемое значение: короткое имя каталога в формате 8.3.
Замечание: только чтение.
Пример:
Set FSO = CreateObject("Scripting.FileSystemObject") Set Folder = FSO.GetFolder("C:Program Files") Str = vbNullString Str = Str & "Дата создания - " & Folder.DateCreated & vbCrLf Str = Str & "Дата последнего доступа - " & Folder.DateLastAccessed & vbCrLf Str = Str & "Дата последней модификации - " & Folder.DateLastModified & vbCrLf Str = Str & "Диск - " & Folder.Drive.DriveLetter & vbCrLf Str = Str & "Это корневой каталог - " & Folder.IsRootFolder & vbCrLf Str = Str & "Имя - " & Folder.Name & vbCrLf Str = Str & "Родительский каталог - " & Folder.ParentFolder.Path & vbCrLf Str = Str & "Путь - " & Folder.Path & vbCrLf Str = Str & "Короткое имя - " & Folder.ShortName & vbCrLf Str = Str & "Путь в формате 8.3 - " & Folder.ShortPath & vbCrLf Str = Str & "Размер - " & Folder.Size & vbCrLf Str = Str & "Тип каталога - " & Folder.Type & vbCrLf MsgBox Str
6.2.11. ShortPath
Синтаксис:
ShortPath
Возвращаемое значение: короткий путь к каталогу в формате 8.3.
Замечание: только чтение.
Пример:
Set FSO = CreateObject("Scripting.FileSystemObject") Set Folder = FSO.GetFolder("C:Program Files") Str = vbNullString Str = Str & "Дата создания - " & Folder.DateCreated & vbCrLf Str = Str & "Дата последнего доступа - " & Folder.DateLastAccessed & vbCrLf Str = Str & "Дата последней модификации - " & Folder.DateLastModified & vbCrLf Str = Str & "Диск - " & Folder.Drive.DriveLetter & vbCrLf Str = Str & "Это корневой каталог - " & Folder.IsRootFolder & vbCrLf Str = Str & "Имя - " & Folder.Name & vbCrLf Str = Str & "Родительский каталог - " & Folder.ParentFolder.Path & vbCrLf Str = Str & "Путь - " & Folder.Path & vbCrLf Str = Str & "Короткое имя - " & Folder.ShortName & vbCrLf Str = Str & "Путь в формате 8.3 - " & Folder.ShortPath & vbCrLf Str = Str & "Размер - " & Folder.Size & vbCrLf Str = Str & "Тип каталога - " & Folder.Type & vbCrLf MsgBox Str
6.2.12. Size
Синтаксис:
Size
Возвращаемое значение: размер всех файлов и подкаталогов, входящих в данный каталог, в байтах.
Замечание: только чтение.
Пример:
Set FSO = CreateObject("Scripting.FileSystemObject") Set Folder = FSO.GetFolder("C:Program Files") Str = vbNullString Str = Str & "Дата создания - " & Folder.DateCreated & vbCrLf Str = Str & "Дата последнего доступа - " & Folder.DateLastAccessed & vbCrLf Str = Str & "Дата последней модификации - " & Folder.DateLastModified & vbCrLf Str = Str & "Диск - " & Folder.Drive.DriveLetter & vbCrLf Str = Str & "Это корневой каталог - " & Folder.IsRootFolder & vbCrLf Str = Str & "Имя - " & Folder.Name & vbCrLf Str = Str & "Родительский каталог - " & Folder.ParentFolder.Path & vbCrLf Str = Str & "Путь - " & Folder.Path & vbCrLf Str = Str & "Короткое имя - " & Folder.ShortName & vbCrLf Str = Str & "Путь в формате 8.3 - " & Folder.ShortPath & vbCrLf Str = Str & "Размер - " & Folder.Size & vbCrLf Str = Str & "Тип каталога - " & Folder.Type & vbCrLf MsgBox Str
6.2.13. Type
Синтаксис:
Type
Возвращаемое значение: тип каталога. Информация, похожая на ту, которую можно увидеть в палитре свойств каталога в проводнике.
Замечание: только чтение.
Пример:
Set FSO = CreateObject("Scripting.FileSystemObject") Set Folder = FSO.GetFolder("C:Program Files") Str = vbNullString Str = Str & "Дата создания - " & Folder.DateCreated & vbCrLf Str = Str & "Дата последнего доступа - " & Folder.DateLastAccessed & vbCrLf Str = Str & "Дата последней модификации - " & Folder.DateLastModified & vbCrLf Str = Str & "Диск - " & Folder.Drive.DriveLetter & vbCrLf Str = Str & "Это корневой каталог - " & Folder.IsRootFolder & vbCrLf Str = Str & "Имя - " & Folder.Name & vbCrLf Str = Str & "Родительский каталог - " & Folder.ParentFolder.Path & vbCrLf Str = Str & "Путь - " & Folder.Path & vbCrLf Str = Str & "Короткое имя - " & Folder.ShortName & vbCrLf Str = Str & "Путь в формате 8.3 - " & Folder.ShortPath & vbCrLf Str = Str & "Размер - " & Folder.Size & vbCrLf Str = Str & "Тип каталога - " & Folder.Type & vbCrLf MsgBox Str
6.2.14. SubFolders
Синтаксис:
SubFolders
Возвращаемое значение: объект-коллекция «Folders», содержащая все подкаталоги данного каталога, включая скрытые и системные.
Замечание: только чтение.
Пример:
Set FSO = CreateObject("Scripting.FileSystemObject") Set Folder = FSO.GetFolder("C:") MsgBox Folder.SubFolders.Count Set SubFolder = Folder.SubFolders.Item("Program Files") MsgBox SubFolder.Path Set SubFolder = Folder.SubFolders("Program Files") MsgBox SubFolder.Path
Другой пример:
Set FSO = CreateObject("Scripting.FileSystemObject") Set Folder = FSO.GetFolder("C:Program Files") For Each SubFolder In Folder.SubFolders WScript.Echo SubFolder.Name Next
Создание нового подкаталога:
Set FSO = CreateObject("Scripting.FileSystemObject") Set Folder = FSO.GetFolder("C:") Set NewFolder = Folder.SubFolders.Add("New Folder")
6.2.15. Files
Синтаксис:
Files
Возвращаемое значение: объект-коллекция «Files», содержащая все файлы данного каталога, включая скрытые и системные.
Замечание: только чтение.
Пример:
Set FSO = CreateObject("Scripting.FileSystemObject") Set Folder = FSO.GetFolder("C:") MsgBox Folder.Files.Count Set File = Folder.Files.Item("AUTOEXEC.BAT") MsgBox File.Path Set File = Folder.Files("AUTOEXEC.BAT") MsgBox File.Path
Другой пример:
Set FSO = CreateObject("Scripting.FileSystemObject") Set Folder = FSO.GetFolder("C:") For Each File In Folder.Files WScript.Echo File.Name Next
6.3. Методы
6.3.1. Copy
Синтаксис:
Copy(<Destination>,<Overwrite>)
Назначение: копирует каталог в указанное место.
Параметры:
- <Destination> — строка, путь (куда копировать).
- <Overwrite> — необязательный, булево (число). Заменять каталог, если он существует (True), или нет (False).
Пример:
Set FSO = CreateObject("Scripting.FileSystemObject") Set Folder = FSO.GetFolder("D:JobSite") Folder.Copy "D:"
6.3.2. Move
Синтаксис:
Move(<Destination>)
Назначение: перемещает каталог в указанное место.
Параметры:
- <Destination> — строка, путь (куда перемещать).
Пример:
Set FSO = CreateObject("Scripting.FileSystemObject") Set Folder = FSO.GetFolder("D:JobSite") Folder.Move "D:"
6.3.3. Delete
Синтаксис:
Delete(<Force>)
Назначение: удаляет каталог со всем содержимым.
Параметры:
- <Force> — необязательный, булево (число). Удалять каталог, если он имеет атрибут «только для чтения» (True), или нет (False).
Пример:
Set FSO = CreateObject("Scripting.FileSystemObject") Set Folder = FSO.GetFolder("C:New Folder") Folder.Delete
6.3.4. CreateTextFile
Синтаксис:
CreateTextFile(<Filename>,<Overwrite>,<Unicode>)
Назначение: создаёт новый текстовый файл и возвращает объект «TextStream», указывающий на него.
Параметры:
- <Filename> — строка, имя файла.
- <Overwrite> — необязательный, булево (число). Перезаписывать файл, если он существует (True), или нет (False). По умолчанию — False. Если указано False и файл существует — произойдёт ошибка.
- <Unicode> — необязательный, булево (число). Файл в формате Unicode (True), или ASCII (False). По умолчанию — False.
Пример:
Set FSO = CreateObject("Scripting.FileSystemObject") Set Folder = FSO.GetFolder("C:") Set TextStream = Folder.CreateTextFile("Test.txt")
7. Объект TextStream
7.1. Создание объекта
Пример №1:
Set FSO = CreateObject("Scripting.FileSystemObject") Set TextStream = FSO.CreateTextFile("C:Test.txt")
Пример №2:
Set FSO = CreateObject("Scripting.FileSystemObject") Set Folder = FSO.GetFolder("C:") Set TextStream = Folder.CreateTextFile("Test.txt")
Пример №3:
Set FSO = CreateObject("Scripting.FileSystemObject") Set TextStream = FSO.OpenTextFile("C:autoexec.bat")
Пример №4:
Set FSO = CreateObject("Scripting.FileSystemObject") Set File = FSO.GetFile("C:autoexec.bat") Set TextStream = File.OpenAsTextStream(1)
7.2. Свойства
7.2.1. AtEndOfLine
Синтаксис:
AtEndOfLine
Возвращаемое значение: содержит True, если указатель достиг конца строки и False в противном случае. Работает только если файл открыт для чтения.
Замечание: только чтение.
Пример:
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.Read(1) Wend TextStream.Close MsgBox Str
7.2.2. AtEndOfStream
Синтаксис:
AtEndOfStream
Возвращаемое значение: содержит True, если указатель достиг конца файла и False в противном случае. Работает только если файл открыт для чтения.
Замечание: только чтение.
Пример:
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 TextStream.Close MsgBox Str
7.2.3. Column
Синтаксис:
Column
Возвращаемое значение: содержит номер колонки текущего символа файла.
Замечание: только чтение.
Пример:
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
7.2.4. Line
Синтаксис:
Line
Возвращаемое значение: содержит номер текущей строки файла.
Замечание: только чтение.
Пример:
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.Line & ": " & TextStream.ReadLine() & vbCrLf Wend TextStream.Close MsgBox Str
7.3. Методы
7.3.1. Close
Синтаксис:
Close
Назначение: закрывает открытый файл.
Параметры: нет.
Пример:
Set FSO = CreateObject("Scripting.FileSystemObject") Set File = FSO.GetFile("C:boot.ini") Set TextStream = File.OpenAsTextStream(1) MsgBox TextStream.ReadAll() TextStream.Close
7.3.2. Read
Синтаксис:
Read(<Characters>)
Назначение: считывает из файла указанное количество символов и возвращает полученную строку.
Параметры:
- <Characters> — число, количество символов, которое нужно считать.
Пример:
Set FSO = CreateObject("Scripting.FileSystemObject") Set File = FSO.GetFile("C:boot.ini") Set TextStream = File.OpenAsTextStream(1) MsgBox TextStream.Read(13) TextStream.Close
7.3.3. ReadAll
Синтаксис:
ReadAll
Назначение: считывает весь файл и возвращает полученную строку.
Параметры: нет.
Описание: для больших файлов использование этого метода потребует больших ресурсов памяти.
Пример:
Set FSO = CreateObject("Scripting.FileSystemObject") Set File = FSO.GetFile("C:boot.ini") Set TextStream = File.OpenAsTextStream(1) MsgBox TextStream.ReadAll() TextStream.Close
7.3.4. ReadLine
Синтаксис:
ReadLine
Назначение: считывает строку из файла и возвращает полученную строку.
Параметры: нет.
Пример:
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
7.3.5. Skip
Синтаксис:
Skip(<Characters>)
Назначение: пропускает при чтении файла указанное количество символов.
Параметры:
- <Characters> — число, количество символов, которые нужно пропустить.
Пример:
Set FSO = CreateObject("Scripting.FileSystemObject") Set File = FSO.GetFile("C:boot.ini") Set TextStream = File.OpenAsTextStream(1) MsgBox TextStream.Read(13) TextStream.Skip 10 MsgBox TextStream.Read(10) TextStream.Close
7.3.6. SkipLine
Синтаксис:
SkipLine
Назначение: пропускает при чтении файла строку.
Параметры: нет.
Пример:
Set FSO = CreateObject("Scripting.FileSystemObject") Set File = FSO.GetFile("C:boot.ini") Set TextStream = File.OpenAsTextStream(1) MsgBox TextStream.ReadLine() TextStream.SkipLine MsgBox TextStream.ReadLine() TextStream.Close
7.3.7. Write
Синтаксис:
Write(<String>)
Назначение: записывает в файл указанную строку. Символы возврата каретки и новой строки в файл не записываются.
Параметры:
- <String> — строка для записи в файл.
Пример:
Set FSO = CreateObject("Scripting.FileSystemObject") Set TextStream = FSO.CreateTextFile("C:Test.txt") TextStream.Write("Text") TextStream.Close
7.3.8. WriteLine
Синтаксис:
WriteLine(<String>)
Назначение: записывает в файл указанную строку. В файл записываются символы возврата каретки и новой строки.
Параметры:
- <String> — необязательный, строка для записи в файл. Если опущен, в файл записывается пустая строка.
Пример:
Set FSO = CreateObject("Scripting.FileSystemObject") Set TextStream = FSO.CreateTextFile("C:Test.txt") TextStream.WriteLine "Text" TextStream.Close
7.3.9. WriteBlankLines
Синтаксис:
WriteBlankLines(<Lines>)
Назначение: записывает в файл указанное количество пустых строк (символы возврата каретки и новой строки).
Параметры:
- <Lines> — число, количество пустых строк, которое надо записать.
Пример:
Set FSO = CreateObject("Scripting.FileSystemObject") Set TextStream = FSO.CreateTextFile("C:Test.txt") TextStream.WriteBlankLines 5 TextStream.Close