Добавил:
Developer Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

10 лабы

.docx
Скачиваний:
0
Добавлен:
02.01.2024
Размер:
223.43 Кб
Скачать

Федеральное агентство связи Ордена

Трудового Красного Знамени

федеральное бюджетное образовательное учреждение высшего образования

«Московский Технический Университет Связи и Информатики»

(МТУСИ)

Кафедра Информатики

Лабораторная работа № 10

Тема:

«Создание приложений, работающих с потоковыми файлами»

Вариант 00

Выполнил:

Москва 0000

Задание 4

Код проекта 5

Option Strict On

Option Explicit On

Public Class Form1

Sub Запись(ByVal ПутьФ As String, ByVal str1 As String)

Dim stroki() = Split(str1, vbNewLine)

If (My.Computer.FileSystem.FileExists(ПутьФ) = True) Then

If (MsgBox("Файл существует. Переписать?", MsgBoxStyle.YesNo Or MsgBoxStyle.Question, "Overwrite") <> MsgBoxResult.Yes) Then Exit Sub

End If

' Сохраняем данные

Try

My.Computer.FileSystem.WriteAllText(ПутьФ, str1, False)

Catch ex As Exception

MsgBox("Файл не может быть записан на диск " & "из-за ошибки:" & vbCrLf & vbCrLf & ex.Message)

End Try

End Sub

'Процедура чтения данных из файла целиком в одну строку

Sub Чтение(ByRef Str3 As String, ByVal filename As String)

' Открываем существующий файл и загружаем его в одну строку

Try

Str3 = My.Computer.FileSystem.ReadAllText(filename)

Catch ex As Exception

MsgBox("Файл не может быть открыт " & " из-за ошибки:" & vbCrLf & vbCrLf & ex.Message)

End Try

End Sub

Function vvod(ByVal T As TextBox) As String

Return T.Text

End Function

Sub vivod(ByVal z As String, ByRef t As TextBox)

If z.Length <> 0 Then

t.Text = z

Else

t.Text = "Все удалено"

End If

End Sub

Sub vivodList(ByVal Z As String, ByVal LB As ListBox)

LB.Items.Add(Format(Z))

End Sub

Sub Обработка(ByRef str4 As String, ByVal путьф2 As String, ByRef result As String) 'str - вводимый поток

Dim stroki() As String = Split(str4, vbNewLine), sWord1 As String = "", sWord2 As String = "", i As Integer,

Min As Integer, Max As Integer, k As Integer, z() As String, n As Integer

For i = 0 To UBound(stroki) 'идет работа по строкам сверху вниз

z = Split(stroki(i)) 'разделение каждой строки на подстроки (слова)

Max = CInt(10 ^ (-38))

Min = CInt(10 ^ 4)

For j = 0 To UBound(z) 'разбор каждого слова в отдельной строке

n = 0

For k = 0 To z(j).Length - 1 'подсчет кол-ва букв в слове

n = n + 1

Next

If n < Min Then

Min = n

sWord1 = z(j)

End If

If n > Max Then

Max = n

sWord2 = z(j)

End If

Next

If stroki(i).IndexOf(sWord2) < stroki(i).IndexOf(sWord1) Then

result += stroki(i) + vbNewLine

TextBox4.Text = result

End If

Next

End Sub

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

Dim str1 As String = ""

Dim ПутьФ1 As String = ""

Dim ПутьФ2 As String = ""

Dim result As String = ""

ПутьФ1 = vvod(TextBox1)

ПутьФ2 = vvod(TextBox2)

Чтение(Str1, ПутьФ1)

vivod(Str1, TextBox3)

Обработка(Str1, ПутьФ2, result)

Запись(ПутьФ2, result)

End Sub

End Class

6 Выполнение

Соседние файлы в предмете Информатика