Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > VB .NET > Поиск и чтение txt файла


Автор: DreamForLives 27.1.2014, 01:01
Здраствуйте!
Пытаюсь реализовать в программе поиск данных по txt-файлу.

Есть txt-файл с кучей данных, при чем записанных без определенной формы:
Цитата


[rel]
1=25
2=25
3=26
4=24
5=26
6=25

Norm=1.0

[Analys]
Pb=0,3
Mg=0.2,3


Нужно, чтобы программа нашла строчку [rel] , и считала все строчки внизу по очереди пока не дойдет до пустой строки. Дальше отделила значения "25/25/26/24/26/25" от нумеровки "1=" и записала значения в текстбоксы. Потом нашла надпись "Norm" и считала ее значение, ну а потом [Analys] - так же как и в первом случае (строчки вниз до пустой), но значение здесь 0 и 0.2 , а после запятой 3 считывать не надо.

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

Код

Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
Dim FI As IO.FileInfo = New IO.FileInfo("C:\Users\Desktop\WindowsApplication2\Inm.txt")
If FI.Exists Then
MsgBox("True")
Else
MsgBox("False")
End If
Try
Dim sr As StreamReader = New StreamReader("Inm.txt")
Dim line As String

' TextBox1.Text = My.Computer.FileSystem.ReadAllText("C:\Users\Desktop\Windows Application2\Inm.txt", System.Text.Encoding.GetEncoding(1251)) 

If line.ToUpper.StartsWith("[re]") Then
sr.ReadLine()
Until sr.Readline Nothing
MsgBox("" & line & "")
End If
' Do
' line = sr.ReadLine()
' MsgBox("" & line & "")
' Loop
' sr.Close()

Catch ex As Exception
MsgBox("couldn't be read")

End Try

Автор: diadiavova 11.2.2014, 00:14
Проще всего регулярками разобрать. Если еще актуально, то можно покумекать smile

Добавлено через 42 секунды
Цитата(DreamForLives @  27.1.2014,  02:01 Найти цитируемый пост)
If line.ToUpper.StartsWith("[re]") Then

Это условие не выполнится никогда smile 

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)