<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
	<title type="html"><![CDATA[Серый форум &mdash; VBS: Удаление строк в файле]]></title>
	<link rel="self" href="https://forum.script-coding.com/extern.php?action=feed&amp;tid=7826&amp;type=atom" />
	<updated>2016-07-25T03:45:56Z</updated>
	<generator>PunBB</generator>
	<id>https://forum.script-coding.com/viewtopic.php?id=7826</id>
		<entry>
			<title type="html"><![CDATA[Re: VBS: Удаление строк в файле]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=106330#p106330" />
			<content type="html"><![CDATA[<p><strong>Kenoby666</strong><br />Добрый день!!<br />А можно найденного слова в строке не удалят а эту строку сохранит на другой файл или другие строки без этих слов удалит?</p>]]></content>
			<author>
				<name><![CDATA[shodikhuja83]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=34080</uri>
			</author>
			<updated>2016-07-25T03:45:56Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=106330#p106330</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: VBS: Удаление строк в файле]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=66278#p66278" />
			<content type="html"><![CDATA[<p>Вот такой скрипт получился, но все данные сваливаются в один файл. Как сделать, чтобы имя временного файла равнялось исходному?</p><div class="codebox"><pre><code>w = &quot;40211&quot;                 &#039;искомые слова
w2 = &quot;40322&quot;
papka = &quot;C:\temp\VBS\file\&quot;     &#039;папка поиска
out = &quot;C:\temp\VBS\out.txt&quot;     &#039;файл-результат
i=0
Dim boolFound

Set objFSO = CreateObject(&quot;Scripting.FileSystemObject&quot;)
Set file2 = objFSO.OpenTextFile(out, 2, True) 

RecursiveFolderScan papka
file2.close

Msgbox &quot;Обработано: &quot;&amp; i &amp;&quot; файл(ов)&quot;

Sub RecursiveFolderScan(FolderPath)
    &#039;Получаем объектную модель текущего каталога
    Set Folder = objFSO.GetFolder(FolderPath)
 
    &#039;Перебираем все файлы в текущем каталоге
    For Each File in Folder.Files
&#039;+++++++++++++++++++++++++++++++++++++++++

Set file1 = objFSO.OpenTextFile(File, 1, False)
boolFound = False
Do Until file1.AtEndOfStream
sw = file1.ReadLine()
	If (InStr(1, sw, w) = 0) AND (InStr(1, sw, w2) = 0) Then     &#039;копируем в др. файл все строки не равные этой
	boolFound = True         
	file2.WriteLine(sw)         
	End If
	
Loop
file1.close
 

&#039;objFSO.DeleteFile File, 1    &#039;удаляем исход.файл
&#039;objFSO.MoveFile out, file


i=i+1        &#039;счетчик файлов
&#039;++++++++++++++++++++++++++++++++++++++

    Next
 
    &#039;Перебираем все подкаталоги в каталоге
    For Each SubFolder in Folder.SubFolders
        RecursiveFolderScan(SubFolder.Path)
    Next
End Sub</code></pre></div>]]></content>
			<author>
				<name><![CDATA[Kenoby666]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=29071</uri>
			</author>
			<updated>2012-11-29T08:31:46Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=66278#p66278</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: VBS: Удаление строк в файле]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=66275#p66275" />
			<content type="html"><![CDATA[<p>Алгоритм поиска я сделал! Не подскажете как переименовывать временный файл в исходный?</p>]]></content>
			<author>
				<name><![CDATA[Kenoby666]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=29071</uri>
			</author>
			<updated>2012-11-29T07:24:58Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=66275#p66275</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: VBS: Удаление строк в файле]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=66273#p66273" />
			<content type="html"><![CDATA[<p>Открыть исходный файл. Создать временный файл. Прочитать одну строку из открытого файла, ища в прочитанной строке посредством функции «InStr()» заданную подстроку. Если подстрока не найдена — записать строку во временный файл. Повторять чтение строк, проверку и запись до конца исходного файла. Переименовать исходный файл, переименовать временный файл в имя исходного. Повторять заданные действия для каждого из файлов в заданной папке.</p>]]></content>
			<author>
				<name><![CDATA[alexii]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=1844</uri>
			</author>
			<updated>2012-11-29T07:06:29Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=66273#p66273</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: VBS: Удаление строк в файле]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=66272#p66272" />
			<content type="html"><![CDATA[<p>А как? <img src="//forum.script-coding.com/img/smilies/smile.png" width="15" height="15" /></p>]]></content>
			<author>
				<name><![CDATA[Kenoby666]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=29071</uri>
			</author>
			<updated>2012-11-29T07:01:19Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=66272#p66272</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: VBS: Удаление строк в файле]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=66270#p66270" />
			<content type="html"><![CDATA[<p>Можно.</p>]]></content>
			<author>
				<name><![CDATA[alexii]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=1844</uri>
			</author>
			<updated>2012-11-29T06:44:03Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=66270#p66270</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: VBS: Удаление строк в файле]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=66268#p66268" />
			<content type="html"><![CDATA[<p>А VBS скриптом нельзя такое сделать?</p>]]></content>
			<author>
				<name><![CDATA[Kenoby666]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=29071</uri>
			</author>
			<updated>2012-11-29T06:11:27Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=66268#p66268</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: VBS: Удаление строк в файле]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=66266#p66266" />
			<content type="html"><![CDATA[<div class="codebox"><pre><code>findstr.exe /V /C:&quot;|40101&quot; old.txt | findstr.exe /V /C:&quot;|40102&quot; &gt;new.txt</code></pre></div>]]></content>
			<author>
				<name><![CDATA[badik]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=21834</uri>
			</author>
			<updated>2012-11-29T05:45:23Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=66266#p66266</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[VBS: Удаление строк в файле]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=66264#p66264" />
			<content type="html"><![CDATA[<p>Здравствуйте!<br />Обращаюсь за помощью.<br />Нужно сделать скрипт, который бы удалял из всех файлов в каталоге строку, содержащую определённые данные.<br />Например:<br />Есть 2 файла с таем содержанием:<br />файл 1:<br /></p><div class="codebox"><pre><code>111|40101
222|40102
333|41105</code></pre></div><p>файл 2:<br /></p><div class="codebox"><pre><code>444|40102
555|40101
666|42201</code></pre></div><p>Нужно, чтобы скрипт удалил все строки, в которых встречаются цифры 40101 и 40102<br />В итоге должны получиться файлы:<br />файл 1:<br /></p><div class="codebox"><pre><code>333|41105</code></pre></div><p>файл 2:<br /></p><div class="codebox"><pre><code>666|42201</code></pre></div><p>Подскажите, пожалуйста, как сделать?</p>]]></content>
			<author>
				<name><![CDATA[Kenoby666]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=29071</uri>
			</author>
			<updated>2012-11-29T05:26:06Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=66264#p66264</id>
		</entry>
</feed>
