Главная страница Случайная страница КАТЕГОРИИ: АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника |
Чтение данных с помощью оператора Input
Для того, чтобы читать текст с диска, используются операторы Open и Line input. Синтаксис оператора Open:
Open ПутьКФайлу For РежимДоступа As УказательФайла Если путь к файлу не указывать, то программа будет обращаться к текущему каталогу, как в нашем примере. Если указывать конкретный путь, то его надо заключать в кавычки, например:
“C: \Мои документы\Разное\FileName.txt”
Некоторые режимы доступа к файлу:
Append – добавление данных в конец существующего файла. Если файл не существует, он будет создан. Input – открытие файла для чтения. Output – открытие файла для записи. Если файла не существует, он будет создан.
Cтроки данных из файла считываются с помощью оператора Line input. Синтаксис оператора Line input таков:
Line Input # FileNum, Buffer
• Line input —ключевые слова оператора. • # — символ, обозначающий указатель файла. • FileNum — допустимый указатель одного из открытых файлов. • Buffer — буферная строка, в которую будут помещены считанные данные.
Простые текстовые файлы сохраняются на диске построчно. Пока при вводе данных (например, в текстовое поле) не нажата клавиша < Enter>, вы продолжаете вводить одну и ту же строку. При нажатии в текстовом поле клавиши < Enter> Visual Basic добавляет в текст два символа chr(13) & chr(1O) (" возврат каретки" и " перевод строки"), чтобы обозначить конец строки. Эти символы тоже будут записаны в сохраняемый файл. Для строки, образованной из этой пары символов, в Visual Basic определена специальная константа, имя которой — vbCrLf. Оператор Line Input считывает символы из файла до тех пор, пока не встретит последовательность, означающую конец строки (vbCrLf). Обнаружив конец строки, оператор помешает все считанные символы в буферную строку, отбрасывая vbCrLf. Для перемещения по строкам в файле удобно использовать цикл Do...While. Чтобы обнаружить конец файла, используется встроенная в Visual Basic функция eof (). Функции eof () в качестве аргумента нужно передавать указатель файла. Пока конец файла не достигнут, оператор Line Input в цикле Do...While продолжает считывать строки из файла.
Код под кнопкой Открыть и под пунктом меню Открыть: Private Sub CmdOpen_Click()
Dim FileName As String 'переменная для имени открываемого файла Dim FileText As String 'сюда будет складываться содержимое файла Dim Buffer As String 'буферная переменная для временного хранения строки Dim FileNum As Integer 'переменная для указателя файла
'устанавливаем фильтр CommonDialog1.Filter = " Текст|*.txt|Все файлы|*.*"
CommonDialog1.ShowOpen
|