назад | содержание | вперед Работа на уровне файлов Для создания файла можно использовать метод createTextFile класса FileSystemObject: Dim NewFSO As New FileSystemObject, NewFile As TextStream Set NewFile = NewFSO.CreateTextFile ("C:\NewFile.txt") Для удаления файла используется метод Delete класса File. Необходимо заметить, что перед удалением файл должен быть закрыт с помощью метода close. Программный код, выполняющий удаление файла в приложении, выглядит следующим образом: Dim NewFile As TextStream, File Set NewFile = NewFSO.CreateTextFile("c:\NewFile.txt") NewFile.Close Set File = NewFSO.GetFile("c:\NewFile.txt") File.Delete В этом примере файл сначала создается, а затем удаляется. Перемещение файлов выполняется с помощью метода Move класса File. Если воспользоваться предыдущим текстом, то код, выполняющий перемещение файла, выглядит следующим образом: Dim NewFile As TextStream, File Set NewFile = NewFSO.CreateTextFile("c:\NewFile.txt") NewFile.Close Set File = NewFSO.GetFile("c:\NewFile.txt") File.Move ("c:\NewFile.txt") При этом, как и при удалении, необходимо закрывать файл. Копирование файла выполняется аналогично перемещению с использованием метода copy. Разработаем приложение для изучения работы с файлами. Для этого воспользуемся приложением, созданным в предыдущем примере при рассмотрении работы с папками. Откройте приложение и модифицируйте его следующим образом: 1. Увеличьте размер формы, переставьте кнопки и текстовое поле с меткой, как показано на рис. 9.13. Текст метки измените на Имя файла. 2. Добавьте в форму объект типа FileListBox (Список файлов), дважды щелкнув мышью кнопку FileListBox на панели элементов управления. Используя свойство Name, назовите его filFiles. 3. Измените текст кода в приложении на указанный ниже: Dim NewFSO As New FileSystemObject, Folder As Folder Dim sNameFolder As String Dim sNameFile As String Dim File Private Sub cbCreate_Click() ' Создание файла Dim NewFile As TextStream sNameFile = dirFolders.Path + "\" + txtNameFile.Text Set NewFile = NewFSO.CreateTextFile(sNameFile) filFiles.Refresh End Sub Private Sub cbDelete_Click() ' Удаление файла sNameFolder = dirFolders.Path Set Folder = NewFSO.GetFolder(sNameFolder) If Folder.IsRootFolder = True Then sNameFile = filFiles.Path + filFiles.FileName Else sNameFile = filFiles.Path + "\" + filFiles.FileName End If Set File = NewFSO.GetFile(sNameFile) File.Delete filFiles.Refresh End Sub Private Sub cbRename_Click () ' Переименование файла sNameFolder = dirFolders.Path Set Folder = NewFSO.GetFolder(sNameFolder) If Folder.IsRootFolder = True Then sNameFile = filFiles.Path + filFiles.FileName Else sNameFile = filFiles.Path + "\" + filFiles.FileName End If Set File = NewFSO.GetFile(sNameFile) File.Name = txtNameFile.Text fil Files.Refresh End Sub Private Sub dirFolders Change() filFiles.Path = dirFolders.Path End Sub Private Sub drvSelectDrive_Change() dirFolders.Path = drvSelectDrive.Drive End Sub Private Sub filFiles_Click() txtNameFile.Text = filFiles.FileName End Sub Рис. 9.13. Приложение для изучения работы с файлами В этом приложении создаются, удаляются и переименовываются файлы. Работа списков синхронизирована по событию change списков устройств и папок.
назад | содержание
| вперед
Поделитесь этой записью или добавьте в закладки |
Полезные публикации |