FSO – тяжелая артиллерия VB6

Информация - Компьютеры, программирование

Другие материалы по предмету Компьютеры, программирование

х методов: метод OpenAsTextStream объекта File или метод OpenTextFile объекта FileSystemObject.

Чтобы записать данные в открытый текстовый файл, используйте методы Write или WriteLine объекта TextStream. Единственое различие между Write и WriteLine - то, что WriteLine добавляет символы newline к концу строки. Если Вы хотите добавлять newline к текстовому файлу, используйте метод WriteBlankLines.

Чтобы закрыть открытый файл, используйте метод Close объекта TextStream.

Sub Create_File()

Dim fso, txtfile

Set fso = CreateObject("Scripting.FileSystemObject")

Set txtfile = fso.CreateTextFile("c:testfile.txt", True)

Запись линии

txtfile.Write ("This is a test. ")

Запись линии с символом newline

txtfile.WriteLine("Testing 1, 2, 3.")

Запись трех символов newline в файл

txtfile.WriteBlankLines(3)

txtfile.Close

End Sub

Чтение файлов File System Objects

Чтобы читать данные из текстового файла, используйте методы Read, ReadLine или ReadAll объекта TextStream:

Чтение определенного числа символов из файла - Read

Чтение всей линии (но не, включая, символ newline) - ReadLine

Чтение всего содержания текстового файла - ReadAll

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

Sub Read_Files()

Dim fso As New FileSystemObject, txtfile

Dim fil1 As File, ts As TextStream

Set txtfile = fso.CreateTextFile("c:testfile.txt", True)

MsgBox "Writing file"

Запись линии

Set fil1 = fso.GetFile("c:testfile.txt")

Set ts = fil1.OpenAsTextStream(ForWriting)

ts.Write "Hello World"

ts.Close

Чтение содержания файла

Set ts = fil1.OpenAsTextStream(ForReading)

s = ts.ReadLine

MsgBox s

ts.Close

End Sub

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

Модель объекта FSO имеет два метода для перемещения, копирования и удаления файлов:

Переместите файл - File.Move or FileSystemObject.MoveFile

Копируйте файл - File.Copy or FileSystemObject.CopyFile

Удалите файл - File.Delete or FileSystemObject.DeleteFile

Этот пример создает текстовый файл в корневой директории дисковода C, пишет некоторую информацию в нем, перемещает его в каталог, называемый tmp, делает копию его в каталог, называемый temp, затем удаляет копии из обоих каталогов. Чтобы выполнять этот пример, удостоверитесь, что Вы имеете каталоги, именованные tmp и temp в корневой директории дисковода C

Sub Manip_Files()

Dim fso As New FileSystemObject, txtfile, fil1, fil2

Set txtfile = fso.CreateTextFile("c:testfile.txt", True)

MsgBox "Writing file"

txtfile.Write ("This is a test.")

txtfile.Close

MsgBox "Moving file to c:tmp"

Код обработки файла в корне C:

Set fil1 = fso.GetFile("c:testfile.txt")

Перемещаем файл в директорию tmp

fil1.Move ("c:tmptestfile.txt")

MsgBox " Копируем файл в c:temp"

Копируем файл в temp

fil1.Copy ("c:temptestfile.txt")

MsgBox "Удаляем файлы"

Код получения текущих дерикторий файлов

Set fil1 = fso.GetFile("c:tmptestfile.txt")

Set fil2 = fso.GetFile("c:temptestfile.txt")

Удаляем дайлы

fil1.Delete

fil2.Delete

MsgBox "Все!"

End Sub

Список литературы

Для подготовки данной работы были использованы материалы с сайта