Извлечение данных из txt фрагментами - Visual Basic .NET
Формулировка задачи:
Нужна помощь с извлечением данных из текстового файла. Извлечение нужно производить не с начала файла, а после определённой фразы. После нее идет огромный массив данных, состоящий из даты и значения температуры. Нужно извлекать значение температуры в зависимости от даты, дата изменяется с шагом в 10 минут и сравнивается с допустимым диапазоном, если диапазон не подходит, то ничего не извлекается. Дата сравнивается с точностью до секунды, а значение температуры состоит исключительно из чисел. Значения температуры заносятся в таблицу экселя, дата сравнивается с датой из той-же таблицы в экселе, там уже есть массив ячеек с разбивкой дат по шагу в рамках допустимого диапазона. Форматы дат в файле и экселе совпадают.
Тело файла выглядит так:
Спойлер
Решение задачи: «Извлечение данных из txt фрагментами»
textual
Листинг программы
- Dim tmp As String = ""
- Try
- tmp = IO.File.ReadAllText("C:\Users\administrator\Desktop\data.txt", System.Text.Encoding.Default) ' считываем данные
- Catch ex As Exception
- End Try
- If tmp <> "" Then
- Dim razdel() As String = Split(tmp, "Значения измеренных величин:") 'режем все, что есть по тексту
- Dim main() As String = Split(razdel(1), "°C") ' все, после заданного выше текста режем по °C
- For i = 0 To main.Count - 2 ' запускаем цикл от 0 до кол-ва записей с "°C", в итоге будем получать строку вида (24/03/2016 09:00:01 - 23.0912 )
- Dim s() As String = Split(main(i), "-") ' режем полученную строку по -, чтобы отделить дату от температуры
- ListBox1.Items.Add(s(0)) ' дата
- ListBox2.Items.Add(s(1)) ' температура
- Next
- End If
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д