Выберите папку, найдите конкретный тип файла и, если нет, напишите в текстовое поле.
Я разрабатываю программу для поиска файлов определенного типа (в одной папке существует только один из них). Я выбираю папку, проверяю ее на предмет типа файла в случае, если он находит потоковый файл и записывает результат запроса в текстовое поле.
Это то, что я получил так далеко:
For Each file1 In IO.Directory.GetFiles(folderA, file_A)
Using fich_time As New StreamReader(file1)
line = fich_time.ReadLine
Try
myStream_time = file1.OpenFile()
If (myStream_time IsNot Nothing) Then
line = fich_time.ReadLine
While Not fich_time.EndOfStream
If line.Contains(" CPU Time for A Analysis") Then
If line.Contains("sec") = True Then
txt_A.Text = line
txt_A.Text = Replace$(txt_A.Text, Space(1), Space(0))
txt_A.Text = Regex.Replace(txt_A.Text, "[^0-9.]", "")
Else
txt_A.Text = line
txt_A.Text = Replace$(txt_A.Text, Space(1), Space(0))
txt_A.Text = Regex.Replace(txt_A.Text, "[^0-9.]", "")
txt_A.Text = txt_A.Text * 3600
End If
End If
End While
End If
Finally
End Try
End Using
Next
Основная ошибка в том, что метод OpenFile является членом строки, насколько я знаю, но какую функцию я должен использовать, чтобы эта работа работала??
С наилучшими пожеланиями Андре
1 ответ
Попробуйте это и не забудьте закрыть файл
For Each file1 In IO.Directory.GetFiles(folderA, file_A)
Using fich_time As New StreamReader(file1)
Try
While Not fich_time.EndOfStream
line = fich_time.ReadLine
If line.Contains(" CPU Time for A Analysis") Then
If line.Contains("sec") = True Then
txt_A.Text = line
txt_A.Text = Replace$(txt_A.Text, Space(1), Space(0))
txt_A.Text = Regex.Replace(txt_A.Text, "[^0-9.]", "")
Else
txt_A.Text = line
txt_A.Text = Replace$(txt_A.Text, Space(1), Space(0))
txt_A.Text = Regex.Replace(txt_A.Text, "[^0-9.]", "")
txt_A.Text = txt_A.Text * 3600
End If
End If
End While
Catch ex As Exception
MsgBox(ex.Message)
Finally
fich_time.Close()
End Try
End Using
Next