Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / поиск строки в текстовом файле / 4 сообщений из 4, страница 1 из 1
25.03.2009, 15:45
    #35891220
allvlg
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
поиск строки в текстовом файле
помогите решить довольно простую задачу :
есть текстовый файл, надо найти в нем слово, и вывести на экран, или в файл что лучше, всю строку, где это слово находится.
есть некоторая наработка :

Set FSO = CreateObject("Scripting.FileSystemObject")
Set f = FSO.OpenTextFile("c:\WF_SME_inc_20090305_202923.log",1)
source = f.ReadAll
s1 = "Ошибка выполнения скрипта"
v1 = InStr (1,source,s1)
If v1 > 0 Then
Set f1 = FSO.OpenTextFile("c:\testfile.txt", 2, True)
f1.WriteLine ??????????? <- наверно что-то надо написать
f1.Close
'закрываем файл
Else
MsgBox "нету"
End If

MsgBox v1
f.Close
...
Рейтинг: 0 / 0
25.03.2009, 19:31
    #35891936
slope
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
поиск строки в текстовом файле
в модуле
Public Declare Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" (ByVal hWnd As Long, ByVal lpOperation As String, ByVal lpFile As String, ByVal lpParameters As String, ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long
Sub subLog(strLog As String)
On Error Resume Next
If strLog <> "" Then
Open "c:\testfile.txt" For Append As 2
Print #2, Now() & vbTab & strLog
Close #2
Err.Clear
End If
End Sub
-----------------в форме
ссылку на микросовт скриптинг рунтайм не забудь
Private fso As New FileSystemObject
Private File As File
Private txt As TextStream

Private Sub Command1_Click()
Dim MyText As String
Set File = fso.GetFile("c:\WF_SME_inc_20090305_202923.log") 'берем файл где искать
Set txt = File.OpenAsTextStream(ForReading)
Do While Not txt.AtEndOfStream 'пока не будет конец текстового потока
MyText = txt.ReadLine
if (MyText Like "*Ошибка выполнения скрипта*" )=true then sublog MyText 'пишем строку где есть совпадение с Ошибка выполнения скрипта
Loop
txt.Close 'закрываем текстовый поток
subLog " поиск завершен"
end sub

вот как то так у меня работает
...
Рейтинг: 0 / 0
27.03.2009, 12:50
    #35896220
klen_
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
поиск строки в текстовом файле
здесь тоже посмотрите, может что-то переделаете по-своему
поиск слова или фразы, очень быстро
в принципе, это доморощенный алгоритм, но работает
...
Рейтинг: 0 / 0
31.03.2009, 17:52
    #35904074
allvlg
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
поиск строки в текстовом файле
спасибо!!!!!!!!!! сделал!!!
Do While Not f.AtEndOfStream
strTemp=f.ReadLine
v1 = InStr (1,strTemp,s1)
If v1 >0 Then
f1.WriteLine strTemp
End If
Loop
f1.close
как-то так. но это выжимка из всего написанного.
т.е. пробегаем по всему файлу и читаем строки, а потом можно выбирать данные целыми строками.
...
Рейтинг: 0 / 0
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / поиск строки в текстовом файле / 4 сообщений из 4, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]