Сайт о телевидении

Сайт о телевидении

» » Расширение файла VBS. Расширение файла VBS Расширение файла vbs

Расширение файла VBS. Расширение файла VBS Расширение файла vbs

В данной статье я расскажу про работу с файлами средствами VBS при помощи объекта FSO и File . В принципе все методы и свойства показанные здесь очень схожи с теми, что были в предыдущем уроке про работу с папками. Я бы даже сказал, что объект File — брат близнец объекта Folder. Данный урок будет полезен при создании VBS cтиллера для кражи паролей . Ну что, приступим.

Методы объекта FSO для работы с файлами

Опять напомню, что для работы нам понадобиться вызвать объект FileSystemObject . Без него наш сценарий VBS работать не будет.

CopyFile — копирует один или несколько файлов. Возможно использовать подстановочные знаки: “*” – любое количество символов и “?” – любой один символ.
Синтаксис: CopyFile(Source, Destination [, Overwrite])

  • Source — путь к файлу который копируем.
  • Destination — куда копируем.
  • Overwrite — не обязательный параметр. Перезаписывать существующие файлы (True) или нет (False). По умолчанию True. Если копируемый файл в папке имеет атрибут Read-Only, то возникает ошибка.

MoveFile — перемещает один или несколько фалов. Возможно использовать подстановочные символы. Если перемещаемый файл уже существует или является файлом в Destination, то выдаст ошибку.
Синтаксис: MoveFile(Source, Destination)

DeleteFile — Удаляет один или несколько файлов. Можно использовать подстановочные знаки.
Синтаксис: DeleteFile(Filespec [, Force])

  • Filespec — Путь к файлу.
  • Force — Не обязательный параметр. Удалять файлы с атрибутом read-only (True) или нет (False) . По умолчанию False.

А теперь наслаждаемся примером:

"Урок VBScript №13: "Работа с файлами (FSO) "file_1.vbs "******************************************************** Dim FSO, Text Set FSO = CreateObject("Scripting.FileSystemObject") FSO.CreateFolder "Папка с файлами" FSO.CreateFolder for i=1 to 9 Set Text = FSO.CreateTextFile(".\Папка с файлами\text_" & i & ".txt") next Text.Close MsgBox "Появилось 9 файлов и 1 папка в созданной папке - Папка с файлами" & vbCrlf & "Сейчас файлы будут скопированы в папку - Подкаталог" FSO.CopyFile ".\Папка с файлами\text_*", ".\Папка с файлами\Подкаталог", 0 MsgBox "файлы скопированы" & vbCrlf & "Сейчас произойдёт удаление старых файлов" FSO.DeleteFile ".\Папка с файлами\text*.txt", 1 MsgBox "Старые файлы удалены" & vbCrlf & "Перемещение новых файлов обратно" FSO.MoveFile ".\Папка с файлами\Подкаталог\*.txt", ".\Папка с файлами" MsgBox "Перемещение новых файлов обратно закончено" & vbCrlf & "Сейчас произодёт удаление всех файлов и папок" FSO.DeleteFolder ".\Папка с ф?йл*", 0

"********************************************************

"Урок VBScript №13:

"Работа с файлами (FSO)

"file_1.vbs

"********************************************************

Dim FSO , Text

FSO . CreateFolder "Папка с файлами"

FSO . CreateFolder ".\Папка с файлами\Подкаталог"

for i = 1 to 9

Set Text = FSO . CreateTextFile (".\Папка с файлами\text_" & i & ".txt" )

next

Text . Close

MsgBox "Появилось 9 файлов и 1 папка в созданной папке - Папка с файлами" & vbCrlf & "Сейчас файлы будут скопированы в папку - Подкаталог"

FSO . CopyFile ".\Папка с файлами\text_*" , ".\Папка с файлами\Подкаталог" , 0

MsgBox "файлы скопированы" & vbCrlf & "Сейчас произойдёт удаление старых файлов"

FSO . DeleteFile ".\Папка с файлами\text*.txt" , 1

MsgBox "Старые файлы удалены" & vbCrlf & "Перемещение новых файлов обратно"

FSO . MoveFile ".\Папка с файлами\Подкаталог\*.txt" , ".\Папка с файлами"

MsgBox "Перемещение новых файлов обратно закончено" & vbCrlf & "Сейчас произодёт удаление всех файлов и папок"

FSO . DeleteFolder ".\Папка с ф?йл*" , 0

GetBaseName — Вернёт имя указанного файла без расширения.

GetExtensionName — Возвращает расширение указанного файла.

GetFileName — Вернёт имя файла вместе с его расширение.

GetParentFolderName — Вернёт путь к указанному файлу.

"******************************************************** "Урок VBScript №13: "Работа с файлами (FSO) "file_2.vbs "******************************************************** Dim FSO, File1, File2, File3, File4 Set FSO = CreateObject("Scripting.FileSystemObject") File1 = FSO.GetBaseName("C:\Papka\file.txt") File2 = FSO.GetExtensionName("C:\Papka\file.txt") File3 = FSO.GetFileName("C:\Papka\file.txt") File4 = FSO.GetParentFolderName("C:\Papka\file.txt") MsgBox File1 & vbCrlf & File2 & vbCrlf & File3 & vbCrlf & File4

"********************************************************

"Урок VBScript №13:

"Работа с файлами (FSO)

"file_2.vbs

"********************************************************

Dim FSO , File1 , File2 , File3 , File4

Set FSO = CreateObject ("Scripting.FileSystemObject" )

File1 = FSO . GetBaseName ("C:\Papka\file.txt" )

File2 = FSO . GetExtensionName ("C:\Papka\file.txt" )

File3 = FSO . GetFileName ("C:\Papka\file.txt" )

File4 = FSO . GetParentFolderName ("C:\Papka\file.txt" )

MsgBox File1 & vbCrlf & File2 & vbCrlf & File3 & vbCrlf & File4

FileExists — Проверяет наличие файла. Вернёт True если он есть и False в противном случае.

"******************************************************** "Урок VBScript №13: "Работа с файлами (FSO) "file_3.vbs "******************************************************** Dim FSO, File Set FSO = CreateObject("Scripting.FileSystemObject") File = FSO.FileExists("C:\Windows\WindowsUpdate.Log") MsgBox "Файл WindowsUpdate.txt существует = " & File

"********************************************************

"Урок VBScript №13:

"Работа с файлами (FSO)

"file_3.vbs

"********************************************************

Dim FSO , File

Set FSO = CreateObject ("Scripting.FileSystemObject" )

File = FSO . FileExists ("C:\Windows\WindowsUpdate.Log" )

MsgBox "Файл WindowsUpdate.txt существует = " & File

GetTempName — Генерирует случайное имя файла, которое можно будет использовать для создания временных файлов.

"******************************************************** "Урок VBScript №13: "Работа с файлами (FSO) "file_4.vbs "******************************************************** Dim FSO Set FSO = CreateObject("Scripting.FileSystemObject") MsgBox FSO.GetTempName()

GetFileVersion — Возвращает версию исполняемого файла.

"******************************************************** "Урок VBScript №13: "Работа с файлами (FSO) "file_5.vbs "******************************************************** Dim FSO Set FSO = CreateObject("Scripting.FileSystemObject") MsgBox FSO.GetFileVersion("C:\Windows\write.exe") MsgBox FSO.GetFileVersion("C:\Program Files\WinRAR\WinRAR.exe")

"********************************************************

"Урок VBScript №13:

"Работа с файлами (FSO)

"file_5.vbs

"********************************************************

Dim FSO

Set FSO = CreateObject ("Scripting.FileSystemObject" )

MsgBox FSO . GetFileVersion ("C:\Windows\write.exe" )

MsgBox FSO . GetFileVersion ("C:\Program Files\WinRAR\WinRAR.exe" )

GetFile — Вернёт объект «File» из указанного пути.

"******************************************************** "Урок VBScript №13: "Работа с файлами (FSO) "file_6.vbs "******************************************************** Dim FSO Set FSO = CreateObject("Scripting.FileSystemObject") Set File = FSO.GetFile("C:\File.txt") MsgBox File

На этом непосредственно с FSO мы закончили и теперь давайте перейдём к объекту «File»

Свойства объекта File для работы с файлами

Attributes — Вернёт атрибуты (набор флагов) файла.
Пример смотрите в статье « » — Всё аналогично, Но вместо «GetFolder» используем «GetFile» .

DateCreated — Вернёт дату создания файла

DateLastAccessed — Возвращает дату последнего доступа к файлу.

DateLastModified — Вернёт дату последней модификации (Редактирования) файла.

Drive — Название диска (объект «Drive») на котором расположен файл.

Name — Вернёт имя файла

ParentFolder — Вернёт объект «Folder» родительского каталога.

Path — Вернёт полный путь к файлу.

ShortName — Возвращает короткое имя файла в формате 8.3

ShortPath — Вернёт короткий путь к фалу в формате 8.3

Size — Вернёт размер файла.

Type — Вернёт тип файла.

"******************************************************** "Урок VBScript №13: "Работа с файлами (FSO) "file_6.vbs "******************************************************** Dim FSO, File Set FSO = CreateObject("Scripting.FileSystemObject") Set File = FSO.GetFile("C:\Windows\AppCompat\Appraiser\GatedDefaultCache.bin") MsgBox "Дата создания - " & File.DateCreated & vbCrLf _ & "Дата последнего доступа - " & File.DateLastAccessed & vbCrLf _ & "Дата последней модификации - " & File.DateLastModified & vbCrLf _ & "Диск - " & File.Drive & vbCrLf _ & "Имя файла - " & File.Name & vbCrLf _ & "Родительский каталог - " & File.ParentFolder & vbCrLf _ & "Путь к файлу - " & File.Path & vbCrLf _ & "Короткое имя 8.3 - " & File.ShortName & vbCrLf _ & "Путь в формате 8.3 - " & File.ShortPath & vbCrLf _ & "Тип файла - " & File.Type & vbCrLf _ & "Размер файла в байтах - " & File.Size

"********************************************************

"Урок VBScript №13:

"Работа с файлами (FSO)

"file_6.vbs

"********************************************************

Dim FSO , File

Set FSO = CreateObject ("Scripting.FileSystemObject" )

Set File = FSO . GetFile ("C:\Windows\AppCompat\Appraiser\GatedDefaultCache.bin" )

MsgBox "Дата создания - " & File . DateCreated & vbCrLf _

& "Дата последнего доступа - " & File . DateLastAccessed & vbCrLf _


Имеются две основных категории операций с файлами:

  • Создание, добавление или удаление данных и чтение файлов

Создание файлов

Есть три способа создания пустого текстового файла (иногда называемого как «text stream»).

Первый способ - это использование метода CreateTextFile

Dim fso, f1 Set fso = CreateObject("Scripting.FileSystemObject") Set f1 = fso.CreateTextFile("c:\testfile.txt", True) Пример использования данного метода см. в разделе «3.7. Пример работы с объектом FileSystemObject».

Второй способ - это использование метода OpenTextFile объекта FileSystemObject с набором флагов ForWriting . В следующем примере показано, как создать текстовый файл, используя этот метод:

Dim fso, ts Const ForWriting = 2 Set fso = CreateObject("Scripting. FileSystemObject") Set ts = fso.OpenTextFile("c:\test.txt", ForWriting, True) Третий способ - это использование метода OpenAsTextStream с набором флагов ForWriting . В следующем примере показано, как создать текстовый файл, используя этот метод: Dim fso, f1, ts Const ForWriting = 2 Set fso = CreateObject("Scripting.FileSystemObject") fso.CreateTextFile ("c:\test1.txt") Set f1 = fso.GetFile("c:\test1.txt") Set ts = f1.OpenAsTextStream(ForWriting, True)

Добавление данных в файл

Однажды создав текстовый файл, вы можете добавлять в него данные, для чего нужно выполнить три действия:

  • Открыть текстовый файл
  • Записать данные
  • Закрыть файл
Для открытия существующего файла используйте метод OpenTextFile объекта FileSystemObject или метод OpenAsTextStream объекта File .

Для записи данных в текстовый файл используйте методы Write , WriteLine или WriteBlankLines объекта TextStream , в зависимости от задач, описанных в приведённой ниже таблице:

Для закрытия текстового файла используйте метод Close объекта TextStream . Закрыть файл можно также методом Close объекта FileSystemObject .

ПРИМЕЧАНИЕ
Символ новой строки содержит символ или символы (зависит от операционной системы) для перевода курсора в начало новой строки (возврат каретки/перевод строки). Следует учитывать, что некоторые строки уже могут иметь в конце эти непечатаемые символы.

В следующем примере показано, как выполняется запись данных в открытый файл всеми тремя методами, затем файл закрывается:

Sub CreateFile() Dim fso, tf Set fso = CreateObject("Scripting.FileSystemObject") Set tf = fso.CreateTextFile("c:\testwritefile.txt", True) " Записать строку с переводом на новую строку. tf.WriteLine("Тестирование 1, 2, 3.") " Записать три пустых строки в файл. tf.WriteBlankLines(3) " Записать строку tf.Write ("Это тест") tf.Close End Sub

Чтение файлов

Для чтения данных из файла используйте методы Read , ReadLine или ReadAll объекта TextStream . Эти методы и задачи, решаемые с их помощью, описаны в приведённой ниже таблице:

Пример использования данных методов см. в разделе «3.7. Пример работы с объектом FileSystemObject».

Если вы используете методы Read или ReadLine и хотите пропустить определённую часть данных, то используйте методы Scip или ScipLine . Полученный в результате работы этих методов текст может быть сохранён в строку, которую можно отобразить на экране в элементе управления, передать в качестве параметра в строковую функцию (например, в Left, Right или Mid), соединить с другой строкой и т.п.

В следующем примере показано, как открыть файл, записать в него данные, а затем прочитать их:

Sub ReadFiles Dim fso, f1, ts, s Const ForReading = 1 Set fso = CreateObject("Scripting.FileSystemObject") Set f1 = fso.CreateTextFile("c:\testreadfile.txt", True) " Записать строку f1.WriteLine "Hello World" f1.WriteBlankLines(1) f1.Close " Прочитать содержимое файла Set ts = fso.OpenTextFile("c:\testreadfile.txt", ForReading) s = ts.ReadLine MsgBox "Содержимое файла = "" & s & """ ts.Close End Sub

Перемещение, копирование и удаление файлов

Объектная модель FSO имеет для каждой из операций перемещения, копирования или удаления файлов по два метода. Эти методы и задачи, решаемые с их помощью, описаны в приведённой ниже таблице:

Пример использования данных методов см. в разделе «3.7. Пример работы с объектом FileSystemObject».

В следующем примере создаётся текстовый файл в корневом каталоге диска С, записывается в него некоторая информация. Затем файл перемещается в директорию с именем \tmp, копируется в директорию \temp, а затем удаляются копии из обеих директорий.

Для проверки работы этого примера создайте в корневом каталоге диска С директории tmp и temp.

Sub ManipFiles Dim fso, f1, f2, s Set fso = CreateObject("Scripting.FileSystemObject") Set f1 = fso.CreateTextFile("c:\testfile.txt", True) " Записать строку f1.Write ("This is a test.") " Закрыть файл для записи f1.Close " Получиь дескриптор файла в корневом каталоге C:\. Set f2 = fso.GetFile("c:\testfile.txt") " Переместить файл в каталог \tmp f2.Move ("c:\tmp\testfile.txt") " Копировать файл в каталог \temp. f2.Copy ("c:\temp\testfile.txt") " Получить дескрипторы файлов Set f2 = fso.GetFile("c:\tmp\testfile.txt") Set f3 = fso.GetFile("c:\temp\testfile.txt") " Удалить файлы f2.Delete f3.Delete MsgBox "Все операции выполнены!" End Sub

Итак, теперь мы добрались до работы с файлами.

Как мы уже говорили, В VBS для работы с файловой системой существует FileSystemObject .

При помощи FSO можно работать с файлами. Алгоритм начала работы такой:

1. Объявляем переменную. Не обязательно такое же название, но оно наиболее логичное. А ещё, ваш код будет понятнее для других.

Dim FSO

2. Записываем в переменную FSO копию объекта FileSystemObject, который предназначен для работы с файловой системой Windows

Теперь, давайте ознакомимся с небольшим арсеналом методов:

FSO.GetBaseName(ПутьКФайлу) — Вернёт имя файла без расширения

FSO.GetExtensionName(ПутькФайлу) — Вернёт расширение файла

FSO.GetFileName(ПутьКФайлу) — Вернёт имя файла с расширением

FSO.GetParentFolderName(ПутьКФайлу) — Вернёт каталог, в котором находится файл

FSO.FileExists(ПутьКФайлу) — Проверяет, существует ли файл. Если да, то значение True.

FSO.GetTempName() — Возвращает случайное имя для временного файла

Для получения доступа к файлу необходимо выполнить fso.GetFile(ПутьКФайлу) в какую либо переменную. Например:

SET File=fso.GetFile(«C:\q1\q1.txt»)

File.Copy(ПолныйПуть) — Копировать файл в указанное место. Путь необходимо указывать полный, с названием файла и его расширением.

Например: File.Copy(«C:\q1\new\q1.txt»)

Так же мы можем:

File.Move (ПолныйПуть) — Перемещаем файл

File.Delete — удаляем полученный файл. Указывать путь не надо

Но самое полезное — работа с текстовым файлом, так называемое Text Stream.

TextStream

Итак, работа с текстом.

Не забываем, что в любом случае код наш начнётся с

Dim FSO

Set FSO=CreateObject(«Scripting.FileSystemObject»)

Теперь, давайте рассмотрим наши возможности:

1. Создание текстового файла

Set File=FSO.CreateTextFile(полный_путь_к_файлу)

2. Открытие текстового файла

Set txtfile = fso.OpenTextFile(«c:\test.txt»)

3. Чтобы добавлять в файл текст, нужно его открыть для записи

Set ts = fso.OpenTextFile(«c:\test.txt», ForWriting, True )

Set tfile = fso.GetFile(«c:\test1.txt»)

Set tf = tfile.OpenAsTextStream(ForWriting, True)

Теперь, давайте разберёмся, как записывать в файл текст. Для этого есть следующие методы:

Write — записывает символы в файл.
WriteLine — записывает строку в файл.
WriteBlankLines(число) — записывает пустые строки в файл.

Skip(число)
SkipLine — пропускает строку.

Давайте приведём пример создания файла и записи в него текста.

Как мы видим, строки 4, 5 и 6 запишут в одну строчку «Раз Два Три!». 7 строчка вставит 3 пустых строки, а 8 строчка кода добавит в файл строчку «Ёлочка гори!!» и перейдёт на след. строку. Ну и 9 строчка закроет файл.

Теперь поговорим про чтение из файла:

Read(число) — читает указанное количество символов из файла.
ReadLine — читает строку из файла.

ReadALL — читает всё содержимое

Skip(число) — пропускает нужное число символов в строке.
SkipLine — пропускает строку.

Приведём пример считывания текста из файла:

А так же есть не менее полезные вещи:

AtEndOfLine — Определяет достигнут ли конец строки(Boolean).
AtEndOfStream — Определяет достигнут ли конец файла(Boolean).
Column — номер текущего символа в строке.
Line — номер текущей строки.

Первые два метода можно использовать для условий того же Do While или Do Until. Например:

Do While Not File.AtEndOfLine

Последние два метода удобно использовать для контролирования процесса считывания, например чтобы при поиске какой либо информации в момент положительного результата знать, в какой же строчке мы нашли искомый текст и на каком символе. Это позволит минимизировать последующие затраты на заводимые переменные и на действия с ними.

ЗАДАЧИ

Задача1: Дан текстовый файл со списком литературы. Заменить определённые числа в нём и сохранить изменение.

Задача2: Создать текстовый файл, заполненный случайными символами. Вывести его содержимое.

Задача3: Дан текстовый файл, найти в нём какие-либо символы и вывести, в какой строке и на каком месте они стоят.

Задача4: Осуществить поиск директории и вывести процесс выполнения в новый текстовый файл, после чего вывести его содержимое.

Мы надеемся, что помогли Вам решить проблему с файлом VBS. Если Вы не знаете, где можно скачать приложение из нашего списка, нажмите на ссылку (это название программы) - Вы найдете более подробную информацию относительно места, откуда загрузить безопасную установочную версию необходимого приложения.

Посещение этой страницы должно помочь Вам ответить конкретно на эти, или похожие вопросы:

  • Как открыть файл с расширением VBS?
  • Как провести конвертирование файла VBS в другой формат?
  • Что такое расширение формата файлов VBS?
  • Какие программы обслуживают файл VBS?

Если после просмотра материалов на этой странице, Вы по-прежнему не получили удовлетворительного ответа на какой-либо из представленных выше вопросов, это значит что представленная здесь информация о файле VBS неполная. Свяжитесь с нами, используя контактный формуляр и напишите, какую информацию Вы не нашли.

Что еще может вызвать проблемы?

Поводов того, что Вы не можете открыть файл VBS может быть больше (не только отсутствие соответствующего приложения).
Во-первых - файл VBS может быть неправильно связан (несовместим) с установленным приложением для его обслуживания. В таком случае Вам необходимо самостоятельно изменить эту связь. С этой целью нажмите правую кнопку мышки на файле VBS, который Вы хотите редактировать, нажмите опцию "Открыть с помощью" а затем выберите из списка программу, которую Вы установили. После такого действия, проблемы с открытием файла VBS должны полностью исчезнуть.
Во вторых - файл, который Вы хотите открыть может быть просто поврежден. В таком случае лучше всего будет найти новую его версию, или скачать его повторно с того же источника (возможно по какому-то поводу в предыдущей сессии скачивание файла VBS не закончилось и он не может быть правильно открыт).

Вы хотите помочь?

Если у Вас есть дополнительная информация о расширение файла VBS мы будем признательны, если Вы поделитесь ею с пользователями нашего сайта. Воспользуйтесь формуляром, находящимся и отправьте нам свою информацию о файле VBS.

Файл VBS поврежден

Если после установки необходимой программы из списка, Вы по-прежнему не можете открыть файл с расширением VBS, поводом может быть его повреждение. Решением может быть нахождение новой копии файла VBS, который Вы собираетесь открыть

Расширение файла VBS не связано с соответствующим приложением

В таком случае проще всего воспользоваться встроенными в операционную систему инструментами для связи файла VBS с приложениями для его обслуживания. Нажмите дважды на файл, которой не можете открыть, - операционная система покажет список программ, которые вероятнее всего совместимы с Вашим файлом VBS. Выберите одну из них, либо укажите на диске место, в котором Вы установили одно из предложений из нашего списка. Система Windows должна открыть файл VBS с помощью предварительно установленной программы.

Запись, касающаяся файла VBS в "Реестре Системы Windows" удалена либо повреждена
Файл VBS инфицирован вирусом

Может случится так, что компьютерный вирус подшивается под файл VBS. В таком случае, наверняка не будет возможности открытия такого файла. Скачайте любую хорошую антивирусную программу и сканируйте файл VBS. Если антивирусная программа обнаружит опасные данные, это может обозначать индикацию файла VBS.