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
Список литературы
Для подготовки данной работы были использованы материалы с сайта