<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title><![CDATA[Серый форум &mdash; AHK: Обработка текстовго файла]]></title>
		<link>https://forum.script-coding.com/viewtopic.php?id=6417</link>
		<atom:link href="https://forum.script-coding.com/extern.php?action=feed&amp;tid=6417&amp;type=rss" rel="self" type="application/rss+xml" />
		<description><![CDATA[Недавние сообщения в теме «AHK: Обработка текстовго файла».]]></description>
		<lastBuildDate>Wed, 09 Nov 2011 13:22:11 +0000</lastBuildDate>
		<generator>PunBB</generator>
		<item>
			<title><![CDATA[Re: AHK: Обработка текстовго файла]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=53371#p53371</link>
			<description><![CDATA[<div class="quotebox"><cite>Александр_ пишет:</cite><blockquote><div class="quotebox"><cite>Pokerist пишет:</cite><blockquote><p>Александр, спасибо! Но&nbsp; почему-то не срабатывает &quot;if&quot;. Выводятся&nbsp; все имена файлов по очереди, хотя время с момента изменения в каждом сообщении указано верно.</p></blockquote></div><p>Наверно разные версии AHK, я использую <a href="http://www.autohotkey.net/~Lexikos/AutoHotkey_L/">AHK_L</a>. Попробуйте так:</p></blockquote></div><p>Ругается на&nbsp; &quot;} }&quot; если так:</p><div class="codebox"><pre><code>Loop, C:\Del\*.*, A_LoopFileTimeModified , 1 ; Рекурсия в подпапки.
{
   x := A_Now ; текущее время
   x -= A_LoopFileTimeModified ; текущее время минус дата модификации файла
   if(x&lt;3) ; если больше 3 секунд, то выводим имя файла и время, прошедшее с последней модификаци
 {
   msgbox %A_LoopFileName%, %x%
 }
}</code></pre></div>]]></description>
			<author><![CDATA[null@example.com (Pokerist)]]></author>
			<pubDate>Wed, 09 Nov 2011 13:22:11 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=53371#p53371</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Обработка текстовго файла]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=53369#p53369</link>
			<description><![CDATA[<div class="quotebox"><cite>Pokerist пишет:</cite><blockquote><p>Александр, спасибо! Но&nbsp; почему-то не срабатывает &quot;if&quot;. Выводятся&nbsp; все имена файлов по очереди, хотя время с момента изменения в каждом сообщении указано верно.</p></blockquote></div><p>Наверно разные версии AHK, я использую <a href="http://www.autohotkey.net/~Lexikos/AutoHotkey_L/">AHK_L</a>. Попробуйте так:<br /></p><div class="codebox"><pre><code>if x&lt;=3 
{
   msgbox %A_LoopFileName%, %x%
}</code></pre></div>]]></description>
			<author><![CDATA[null@example.com (Александр_)]]></author>
			<pubDate>Wed, 09 Nov 2011 12:26:57 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=53369#p53369</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Обработка текстовго файла]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=53368#p53368</link>
			<description><![CDATA[<p>Александр, спасибо! Но&nbsp; почему-то не срабатывает &quot;if&quot;. Выводятся&nbsp; все имена файлов по очереди, хотя время с момента изменения в каждом сообщении указано верно.</p>]]></description>
			<author><![CDATA[null@example.com (Pokerist)]]></author>
			<pubDate>Wed, 09 Nov 2011 12:03:37 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=53368#p53368</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Обработка текстовго файла]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=53363#p53363</link>
			<description><![CDATA[<div class="quotebox"><cite>Pokerist пишет:</cite><blockquote><p>Насколько я понял этот оператор проверит все файлы в папке, запомнит всех их атрибуты. Теперь мне нужно получить список файлов, которые были измнены за последние 3 сек.<br /> Как это сделать? Допустим время&nbsp; 201111101010.&nbsp; Что мне делать с&nbsp; %A_LoopFileTimeModified% ?</p></blockquote></div><div class="codebox"><pre><code>Loop %A_ScriptDir%\* ;все файлы в папке со скриптом
{
   x := A_Now ; текущее время
   x -= A_LoopFileTimeModified ; текущее время минус дата модификации файла
   if(x&lt;=3) ; если не больше 3 секунд, то выводим имя файла и время, прошедшее с последней модификации
      msgbox %A_LoopFileName%, %x%
}</code></pre></div><p>см. также <a href="http://www.autohotkey.com/docs/commands/EnvSub.htm">EnvSub</a>/<a href="http://www.autohotkey.com/docs/commands/EnvAdd.htm">EnvAdd</a>.</p>]]></description>
			<author><![CDATA[null@example.com (Александр_)]]></author>
			<pubDate>Wed, 09 Nov 2011 09:00:28 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=53363#p53363</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Обработка текстовго файла]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=53358#p53358</link>
			<description><![CDATA[<p>Например:<br /></p><div class="codebox"><pre><code>wPath = %A_AppData%\Folder
wFileName = *
wFileExtension = log

SetTimer, filecheck, 6000
filecheck:
  Loop, %wPath%\%wFileName%.%wFileExtension%
  {
     StringReplace, filename, A_LoopFileName, . ,,A  
     if !(A_LoopFileTimeModified = time_%filename%) {
        ; ...
        ; Действия
        ; ...
     }
  }</code></pre></div>]]></description>
			<author><![CDATA[null@example.com (creature.ws)]]></author>
			<pubDate>Wed, 09 Nov 2011 00:23:34 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=53358#p53358</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Обработка текстовго файла]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=53357#p53357</link>
			<description><![CDATA[<p>Спасибо за помощь!</p><div class="quotebox"><cite>Александр_ пишет:</cite><blockquote><div class="quotebox"><cite>Pokerist пишет:</cite><blockquote><p>1. Проверять в папке файлы на обновление каждые 3 секунды</p></blockquote></div><p>См. <a href="http://www.script-coding.com/AutoHotkey/LoopFilesFolders.html">Loop</a>.</p></blockquote></div><p>Насколько я понял этот оператор проверит все файлы в папке, запомнит всех их атрибуты. Теперь мне нужно получить список файлов, которые были измнены за последние 3 сек.<br /> Как это сделать? Допустим время&nbsp; 201111101010.&nbsp; Что мне делать с&nbsp; %A_LoopFileTimeModified% ?</p>]]></description>
			<author><![CDATA[null@example.com (Pokerist)]]></author>
			<pubDate>Tue, 08 Nov 2011 23:47:10 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=53357#p53357</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Обработка текстовго файла]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=53341#p53341</link>
			<description><![CDATA[<div class="quotebox"><cite>Pokerist пишет:</cite><blockquote><p>1. Проверять в папке файлы на обновление каждые 3 секунды</p></blockquote></div><p>См. <a href="http://www.script-coding.com/AutoHotkey/LoopFilesFolders.html">Loop</a>.<br /></p><div class="quotebox"><cite>Pokerist пишет:</cite><blockquote><p>Есть ли шанс, что исполнение скрипта не вызовет тормозов, если время проверки на обновление сократить до 1 сек или 0,5сек?</p></blockquote></div><p>См. <a href="http://forum.script-coding.com/viewtopic.php?id=6273">AHK: Аудит файловой системы и вызов wait-функции в отдельном потоке</a><br /></p><div class="quotebox"><cite>Pokerist пишет:</cite><blockquote><p>2. В тех, что изменились за последние 3 секунды,&nbsp; начиная снизу найти первое вхождение фразы «10001 10003» или «10001 1004» или «10001 10005»<br />3. запомнить текст от конца файла до этого места<br />4. начиная снизу найти в этом тексте строки со словами «10000 10010» или «10000 10011»<br />5. найти в этом&nbsp; тексте ниже этой строки строку со словом&nbsp; «10012»<br />6. выделить из этой строки(состоящей из двух слов) первое слово.<br />7. проверить есть ли в участке текста(из пункта 3)&nbsp; выше этого места( из пункта 4) строка с этим словом и со словом&nbsp; «10010»</p></blockquote></div><p>См. <a href="http://www.script-coding.com/AutoHotkey/RegEx.html">RegEx</a> и <a href="http://www.script-coding.com/AutoHotkey/RegExMatch.html">RegExMatch</a>.<br /></p><div class="quotebox"><cite>Pokerist пишет:</cite><blockquote><p>8. выдать звуковой сигнал.</p></blockquote></div><p><a href="http://www.script-coding.com/AutoHotkey/SoundBeep.html">SoundBeep</a> или <a href="http://www.script-coding.com/AutoHotkey/SoundPlay.html">SoundPlay</a>.</p>]]></description>
			<author><![CDATA[null@example.com (Александр_)]]></author>
			<pubDate>Tue, 08 Nov 2011 16:38:16 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=53341#p53341</guid>
		</item>
		<item>
			<title><![CDATA[AHK: Обработка текстовго файла]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=53337#p53337</link>
			<description><![CDATA[<p>Пытаюсь разобраться с работой над строками. Запутался совершенно. Может кто-то поможет набросать код по следующему алгоритму?</p><br /><p>1. Проверять в папке файлы на обновление каждые 3 секунды<br />2. В тех, что изменились за последние 3 секунды,&nbsp; начиная снизу найти первое вхождение фразы «10001 10003» или «10001 1004» или «10001 10005»<br />3. запомнить текст от конца файла до этого места<br />4. начиная снизу найти в этом тексте строки со словами «10000 10010» или «10000 10011»<br />5. найти в этом&nbsp; тексте ниже этой строки строку со словом&nbsp; «10012»<br />6. выделить из этой строки(состоящей из двух слов) первое слово.<br />7. проверить есть ли в участке текста(из пункта 3)&nbsp; выше этого места( из пункта 4) строка с этим словом и со словом&nbsp; «10010» <br />8. выдать звуковой сигнал.</p><p>Во всех случаях, если&nbsp; какое-либо условие не соблюдается,&nbsp; переход на начало исполнения кода.</p><br /><br /><p>&nbsp; Техническе моменты.<br />Файлов в папке до 200. <br />Размеры каждого не более 200КБ<br />Количество постоянно меняющихся файлов не более 20.</p><br /><p>&nbsp; Заранее спасибо за помощь!<br /> Есть ли шанс, что исполнение скрипта не вызовет тормозов, если время проверки на обновление сократить до 1 сек или 0,5сек?</p>]]></description>
			<author><![CDATA[null@example.com (Pokerist)]]></author>
			<pubDate>Tue, 08 Nov 2011 15:05:43 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=53337#p53337</guid>
		</item>
	</channel>
</rss>
