не знаю насчет winapi но могу дать статью с сайта www.vbstreets.ru с использованием file system object: Гайдар Магдануров File System Object При использовании File System Object (сокращенно FSO) работа с файлами, папками и дисками значительно упрощается, чем при использовании стандартных операторов Visual Basic. Поэтому благодаря использовании FSO возможно более простое выполнение операций с объектами файловой системы, не требующих от программиста больших усилий. При этом это наиболее простой способ работы с файлами и текстовыми данными из VBScript, что очень часто бывает необходимым при создании ASP, таких как гостевые книги, форумы и чаты. Так вот, для использования FSO вам нужно подключить библиотеку Microsoft Scripting Runtime. После этого, для получения доступа к возможностям библиотеки вам нужно объявить ее, что можно сделать двумя способами: Dim myFSO As Scripting.FileSystemObject Private Sub Form_Load() Set myFSO = New Scripting.FileSystemObject End Sub Или так: Dim myFSO As Object
Private Sub Form_Load() Set myFSO = CreateObject("Scripting.FileSystemObject") End Sub Лично мне нравиться второй вариант, поэтому я буду использовать его. Вот мы подключили библиотеку, теперь пора проверить ее возможности. Помещаем на форму два текстовых окна, рядом лейблы и пишем для первого - имя файла, а для второго текст. Теперь добавляем кнопку и следующий код. Private Sub Command1_Click() Dim myFSO As Object 'Объявляю объектную переменную Dim myTS As TextStream 'Объявляем текстовый поток Set myFSO = CreateObject("Scripting.FileSystemObject") 'Создаем объект файловой системы Set myTS = myFSO.CreateTextFile(Text1.Text, True) 'Открываем поток создавая файл, перезаписывая существующий (True) myTS.Write Text2.Text 'Пишем содержимое второго текстового окна myTS.Close 'Закрываем поток Set myFSO = Nothing 'Чистим память от наших файловых объектов End Sub В принципе можно записать и по другому. При открытии файла для чтения строки выглядят так: Set myTS = fso.OpenTextFile("c:\test.txt", ForWriting) Теперь переделаем эту программу для чтения данных из файла. Делаем для text2 multiline=true, что бы отображать все содержимое нашего файла. Добавляете следующий код в событие клика по кнопке.
Private Sub Command1_Click() Dim myFSO As Object Dim myTS As TextStream Set myFSO = CreateObject("Scripting.FileSystemObject") Dim myfile As File 'Объявляем файловую переменную Set myfile = myFSO.GetFile(Text1.Text) 'Присваеваем нашей переменной файла - файл, имя которого введено в text1 Set myTS = myfile.OpenAsTextStream(ForReading) 'Открываем для чтения Text2.Text = myTS.ReadAll ' Читаем весь файл myTS.Close End Sub Теперь приведу методы TextStream: Write | Пишет в файл. | WriteLine | Пишет в файл одну строку. | WriteBlankLines | Пишет заданное количество строк. | Skip | Пропускает заданное число символов. | SkipLine | Пропускает одну строку. | Read | Читает. | ReadAll | Читает все содержимое файла. | Ответить
|
Страница: 1 |
Поиск по форуму
|