![]() |
VBS, поиск во всех файлах заданной папки и запись в файл.
Привет, скорректируйте пожалуйста.
В заданной папке (C:\old) есть 520 файлов. В каждом файле нужно выполнить построчный поиск, если в строке есть заданное слово, то записать строку в файл (output.txt должен содержать информацию из 520 файлов). В моем случае работает если явно указать имя файла, а мне нужно, чтобы поиском пройтись по всем 520 и записать всю найден. информацию в один файл output.txt. Option Explicit Dim fso, tsIn, tsOut, str Set fso= Createobject("Scripting.FileSystemObject") Set tsIn = fso.OpenTextFile("C:\old\filelog.2010-10-04", 1, 0) ' открываем файл для чтения, в ASCII Set tsOut = fso.CreateTextFile("output.txt", True, False) 'создаём файл в ASCII, при наличии файл перезаписывается Do While Not tsIn.AtEndOfStream str = tsIn.ReadLine 'читаем построчно исходный файл If InStr(1, str, "Мой текст", 1) <> 0 Then 'ищем искомое слово в строке tsOut.WriteLine str 'записываем найденную строку в выходной файл End If Loop tsIn.Close tsOut.Close Set fso = Nothing |
Цитата:
Код:
… |
спасибо, а можно привести готовый вариант, попытался объединить имеющийся свой и ваш, не привело к желаемому результату
|
vlad20, примерно так (не проверялось):
|
В результате выполнения кода получается Ошибка: Объект не поддерживает это свойство или метод: 'AtEndOfStream'
вышел из ситуации так, "слил" все файлы в один и выполнил построчный поиск |
Проверенный ;) вариант.
1. «.AtEndOfStream» — свойство. Исправьте: 2. Забыл, что: Исправьте: |
Время: 19:16. |
Время: 19:16.
© OSzone.net 2001-