Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Пособие по VB.doc
Скачиваний:
23
Добавлен:
12.11.2018
Размер:
2.66 Mб
Скачать
        1. Изменение строк (замена, удаление, вставка символов)

Пример 3. Получить новую строку S1 из введенной строки S, заменив строчные русские буквы на прописные.

Фрагмент программного кода:

For i = 1 To Len(S) 'Цикл по всем символам заданной строки

a = Mid(S, i, 1)

Select Case a

'Преобразование встреченной в заданной строке строчной русской буквы

'в прописную русскую букву и добавление ее в новую строку. Прописная русская буква

'в таблице ASCII имеет код меньший, чем соответствующая ей строчная, на 32.

Case "а" To "я"

S1 = S1 + Chr(Asc(a) - 32)

Case Else

S1 = S1 + a 'Добавление символа строки s в строку s1 без преобразования

End Select

Next i

Пример 4. Получить новую строку S1 из введенной строки S такую, чтобы между словами был только один пробел. Вывести сообщение о количестве удаленных пробелов.

Фрагмент кода программы:

Private Sub Command1_Click()

S = Text1.Text

S = Trim(S) 'Удаление пробелов вначале и в конце заданной строки

S1 = ""

For i = 1 To Len(S) - 1 'Цикл для поиска пробелов

If Mid(S, i, 1) <> " " Then

S1 = S1 + Mid(S, i, 1) 'Переписывание символов,

отличных от проделов в строку s1

Else

'Запись в строку s1 одного пробела, если следующий за ним символ не пробел

If Mid(S, i + 1, 1) <> " " Then S1 = S1 + " "

End If

Next i

S1 = S1 + Mid(S, Len(S), 1) 'Переписывание последнего символа

k = Len(S) - Len(S1) 'Подсчет количества удаленных пробелов

Text2.Text = S1

Text3.Text = Str(k)

End Sub

Пример 5. В заданной строке S заменить все слова «всегда» на «часто».

Фрагмент кода программы:

Private Sub Command1_Click()

s=Text1.Text

s=Replace(s, "Всегда", "Часто", 1)

s=Replace(s, "всегда", "часто", 1)

Text2.Text=s

End Sub

Пример 6. Преобразовать заданную строку S в массив слов и вывести его в поле Text.

Фрагмент кода программы:

Private Sub Command1_Click()

Dim i, k As Byte

Dim s As String

Dim m(1 To 127) As String 'Описание массива для хранения слов

s – заданная строка

s = Text1.Text

Text2.Text = ""

k = 1 'Задание начального номера элемента массива

For i = 1 To Len(s) 'Цикл для поиска пробелов

If (Mid(s, i, 1) <> " ") And (Mid(s, i, 1) <> ".") And

(Mid(s, i, 1) <> "!") And (Mid(s, i, 1) <> "?") Then

m(k) = m(k) + Mid(s, i, 1)'Формирование очередного элемента массива

Else

k = k + 1 'Увеличение номера элемента массива

End If

Next i

For i = 1 To k

Text2.Text = Text2.Text + m(i) + Chr(13) + Chr(10)

Next i

End Sub

  1. Файлы

В зависимости от организационной структуры хранения информации в файле и способа доступа к этой информации принято выделять три типа файлов:

  1. Файлы последовательного доступа. Как правило, это текстовые файлы. Структурной единицей таких файлов является строка. Данные в них хранятся в виде цепочки ASCII кодов и могут обрабатываться любым текстовым редактором. Запись и считывание данных при работе с такими файлами происходит строго последовательно (нельзя получить доступ ко второй записи, не прочитав первой).

  2. Файлы произвольного доступа. Это структурированные файлы, которые содержат информацию в виде записей. Например, файлы баз данных. Компоненты (поля) в записях таких файлов могут иметь разные типы. Но все записи файлов последовательного доступа имеют постоянную длину и порядковый номер. Это позволяет получить доступ сразу к нужной записи без последовательного просмотра всех предыдущих.

  3. Бинарные (двоичные) файлы. Это могут быть файлы последовательного доступа, но информация в них представлена в виде байтов или блоков байтов. К таким файлам можно отнести файлы с расширением exe, т.е. программные. Это могут быть файлы произвольного доступа: размер записи у них всегда равен 1 байту, и любой байт можно считать по его порядковому номеру.