|
[ Главная ] [ Статьи ] [ Для новичков ] [ Примеры ] [ Программы ] [ Microsoft Agent 2.0 ] [ Пособие ] [ Уроки ] [ Разное ] |
Работа с текстовыми файлами в Visual Basic.Совсем недавно в непомню какой коференции я видел запись какого-то человека, который просил, чтобы хоть кто-нибудь объяснил ему элементарную работу с файлами... Казалось бы такое простое... Но это простое для тех, кто уже хоть немного продвинулся в программировании, а кто это только начал? Это же, действительно, непроходимый лес! И я сильно сомневаюсь, чтобы кто-нибудь из других наших Web-мастеров когда-нибудь уделит этому хоть какое-то внимание. Поэтому этим займусь я и попробую в этой статье показать только основы. 1.Открытие файла для чтения информации из него. Итак, чтобы безпроблемно работать с текстовыми файлами сначала их нужно открыть. Делается это с помощью оператора Open, например: Open "c:\text.txt" For Input As #1 Обратите внимание на режим открытия файла - Input (для чтения). Здесь файл text.txt открывается для считывания под номером 1. Внимание!!! Номер файла - обязательный параметр, и вводить его нужно всегда! Если ваша программа будет иметь дело не с одним десятком открытых файлов, то уследить за их нумерацией будет сложновато. Используйте для этого функцию FreeFile. Она возвращает ещё не занятый номер (от 1 до 511) для файла: Dim FileNum As Integer FileNum = FreeFile Open "c:\text.txt" For Input As FileNum Так, файл открыли! Теперь из него нужно что-нибудь считать. Оператор Line Input считывает из открытого файла по одной строке при каждом вызове. Поэтому для считывания из файла нужно построить цикл, который бы вызывал этот оператор до тех пор, пока не дошёл бы до конца файла: 'цикл
выполняется, пока конец файла не достигнут
'при каждом вызове оператора Line Input он записывает в
Loop Закрыть открытый файл можно оператором Close #FileNum. А теперь вот как это должно выглядеть в практике: Dim
FileNum
As Integer
'открываем
файл в режиме чтения
'запускаем
вышеупомянутый цикл
'закрываем
файл с номером FileNum
'выводим
содержимое переменной alltext
2.Открытие файла для записи информации в него. Записать информацию в файл ещё проще!!! Эта операция отличается от предыдущей только тем, что открыть файл надо в режиме записи: Open "c:\text.txt" For Output As FileNum и вместо цикла нужно вставить оператор Print #, который записывает в файл содержимое переменной: Print #FileNum, "Азбука Visual Basic" или Print #FileNum, alltext Пример: Dim
FileNum
As Integer
'открываем
файл в режиме записи
Print #FileNum, txt 'закрываем
файл с номером FileNum
Проверьте содержимое файла. И ещё хочу предложить второй способ записи информации в файл - с помощью API-функции WritePrivateProfileStringByKeyName. Считывать же информацию нужно с помощью API-функции GetPrivateProfileString. Теперь расскажу - как всё это работает? 1.Создайте
стандартный проект.
Declare
Function GetPrivateProfileString&
Lib _
Declare
Function WritePrivateProfileStringByKeyName%
Lib _
5.Создайте
подпрограмму Main - просто введите Sub Main.
Sub Main() 'создаём
файл test.ini, в нём заголовок "Main", ключ "URL" _
End Sub При запуске проекта на диске С: тут же будет создан файл Test.ini со следующим содержимым: [Main]
8:-O!!! Не правда ли, просто? А считать это чуть-чуть сложнее. Итак, файл создан, теперь поробуем считать информацию оттуда. Удалите всё, что находится между строками "Sub Main()" и "End Sub". Впишите следующее: Sub Main() 'создаём
переменную, в которую будет передоваться строка
'открывается
файл файл test.ini, и в переменную MyString _
End Sub Ну,
вот и всё!
|
|
|
|
>>>Если у вас есть статья которой нет на сайте
пришлите ее мне--------> Послать статью >>>Если вы хотите задать вопрос пишите--------> Мне нужна помощь |
|
|
|