Главная Программирование Языки программирования Работа с текстовыми файлами в Visual Basic

Работа с текстовыми файлами в Visual Basic

28.10.2011

 

В интернете на многих сайтах о програмировании я видел много вопросов: "Как работать с файлами в Visual basic?", "Объясните как работать с файлами?" и т.п. Казалось бы так просто... Но это просто не для всех...

1.Открытие файла.

Итак, чтобы безпроблемно работать с текстовыми файлами сначала их нужно открыть.Сделать это можно с помощью оператора Open, например:

Open "x:nametxt.txt" For Input As #1

Обратите внимание на режим открытия файла - Input (для чтения). Здесь файл nametxt.txt открывается под номером 1. Внимание!!! Номер файла - обязательный параметр, и вводить его нужно обязательно! Если ваша программа будет иметь дело с множество открытых файлов, то уследить за их нумерацией будет сложно. Используйте для этого функцию FreeFile. Она возвращает ещё не занятый номер (от 1 до 511) для файла:

Dim FN As Integer

FN = FreeFile

Open "x:nametxt.txt" For Input As FN

Так, файл открыли! Теперь из него нужно что-нибудь считать. Оператор Line Input считывает из открытого файла по одной строке при каждом вызове. Поэтому для считывания из файла нужно построить цикл, который бы вызывал этот оператор до тех пор, пока не дошёл бы до конца файла

Do Until EOF(FN)

при каждом вызове оператора Line Input он записывает в переменную новою строку
Line Input #FN

Loop

Закрыть файл можно оператором Close #FN. А теперь вот как это должно выглядеть в коде:

Dim FN As Integer
Dim txt As String
Dim AT As String
FN = FreeFile

открываем файл в режиме чтения
Open "x:nametxt.txt" For Input As FN

запускаеv цикл
Do Until EOF(FN)
считываем строку из файла с номером FN и сохроняем её в переменную txt
Line Input #FN, txt
теперь к переменной AT добавляем содержимое переменной txt - строки и vb-константу
vbCrLf (Chr(13)+Chr(10)), т.к. каждая строка должна быть с новой строки!
AT = AT + txt + vbCrLf
Loop

закрываем файл с номером FN
Close #FN

выводим переменную AT
MsgBox AT

2.Открытие файла для записи информации в него.

Записать информацию в файл проще простого!!! Эта операция отличается  от предыдущей тем, что открыть файл надо в режиме записи:

Open "x:nametxt.txt" For Output As FN

Теперь нужно вставить оператор Print # место цикла, который записывает в файл содержимое переменной:

Print #FN, "Текст"

или

Print #FN, AT(переменная)

Пример:

Dim FN As Integer
Dim txt As String
FN = FreeFile
txt = "Работа с файлами"

открываем файл в режиме записи
Open "x:nametxt.txt" For Output As FN

Print #FN, txt

закрываем файл
Close #FN

Проверьте содержимое файла.
Вот и всё теперь Вы умеете открывать файл и записывать в него!Можно переменной txt присвоить значение Text1.text
(txt = Val(Text1.text))
потом создать TextBox и ComandButton и в коде кнопки прописать Print #FN, txt и тогда в этот файл будет добовляться строка которую введёт пользователь!
Надеюсь вы освоили работу с текстовыми файлами!

Каталог программ
О разном