sanjayv.gade Ответов: 3

Как найти конкретную строку в текстовом файле из VB.NET


<pre><code></code>

Amir Mahfoozi

Некоторые люди такие знатоки, что даже на пустой вопрос у них есть ответ ! :)

3 Ответов

Рейтинг:
21

OriginalGriff

Как вы это сделаете, будет зависеть от ряда факторов: поскольку вы не пытались объяснить подробно, я буду считать, что вы ничего не знаете, и просто дам вам основы.

Самый простой способ сделать это-прочитать текстовый файл в одну строку, а затем использовать .NET framework для поиска совпадения:

Dim text As String = File.ReadAllText("D:\Temp\MyFile.txt")
Dim index As Integer = text.IndexOf("hello")
If index >= 0 Then
   ' String is in file, starting at character "index"
End If

Есть и другие способы, но это, пожалуй, самый простой.


koolprasadd

Простой способ OriginalGriff. 5.

Рейтинг:
2

TazzyOpz

Зачем вам нужно регулярное выражение? Все что вам нужно это streamreader


Дим Findstring = ИО.Файл.ReadAllText ("Путь К Вашему Файлу")
Dim Lookfor as string = " hello"

Если Найдется Струна.Содержит (Lookfor) тогда
Msgbox ("найдено:" & Lookfor)
конец, если



Хотя... Ваш метод будет чище и, вероятно, лучше для будущего использования.. Вам не нужно регулярное выражение.


Рейтинг:
1

koolprasadd

Для этого вам нужны StreamReader и Regx.

//read file content in StreamReader
StreamReadertxt Reader = new StreamReader(fName);
szReadAll = txtReader.ReadToEnd();//Reads the whole text file to the end
txtReader.Close(); //Closes the text file after it is fully read.
txtReader = null;
//search word in file content
if (Regex.IsMatch(szReadAll, "SearchME", RegexOptions.IgnoreCase))//If the match is found in allRead
  MessageBox.Show("found");
else
  MessageBox.Show("not found");


OriginalGriff

Использование регулярного выражения-это что-то вроде большой кувалды, чтобы расколоть действительно очень маленький орех.
Как и использование потокового считывателя для извлечения данных...