<?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>http://forum.script-coding.com/viewtopic.php?id=8459</link>
		<atom:link href="http://forum.script-coding.com/extern.php?action=feed&amp;tid=8459&amp;type=rss" rel="self" type="application/rss+xml" />
		<description><![CDATA[Недавние сообщения в теме «AHK:Удаление конкретной строчки из файла».]]></description>
		<lastBuildDate>Sun, 21 Jul 2013 04:07:57 +0000</lastBuildDate>
		<generator>PunBB</generator>
		<item>
			<title><![CDATA[Re: AHK:Удаление конкретной строчки из файла]]></title>
			<link>http://forum.script-coding.com/viewtopic.php?pid=73948#p73948</link>
			<description><![CDATA[<div class="quotebox"><cite>serzh82saratov пишет:</cite><blockquote><p>Ну, я подумал что в итоге получится <em>текст</em> ввиде единиц и нулей.</p></blockquote></div><p>Нет, текст получается, если читать как текстовый или специально преобразовывать в хекс-, двоичное или ещё какое отображение бинарных данных.</p><div class="quotebox"><cite>serzh82saratov пишет:</cite><blockquote><p>А не могли бы вы объяснить работу с ини файлами? Каким образом в них происходит запись?</p></blockquote></div><p>Там используется API WritePrivateProfileString, насколько мне известно. А как она действует, я не знаю.</p>]]></description>
			<author><![CDATA[null@example.com (YMP)]]></author>
			<pubDate>Sun, 21 Jul 2013 04:07:57 +0000</pubDate>
			<guid>http://forum.script-coding.com/viewtopic.php?pid=73948#p73948</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK:Удаление конкретной строчки из файла]]></title>
			<link>http://forum.script-coding.com/viewtopic.php?pid=73944#p73944</link>
			<description><![CDATA[<div class="quotebox"><blockquote><p>А при чём тут RegExMatch? Она же в тексте ищет.</p></blockquote></div><p>Ну, я подумал что в итоге получится <em>текст</em> ввиде единиц и нулей. </p><br /><p>А не могли бы вы объяснить работу с ини файлами? Каким образом в них происходит запись?</p>]]></description>
			<author><![CDATA[null@example.com (serzh82saratov)]]></author>
			<pubDate>Sat, 20 Jul 2013 19:34:40 +0000</pubDate>
			<guid>http://forum.script-coding.com/viewtopic.php?pid=73944#p73944</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK:Удаление конкретной строчки из файла]]></title>
			<link>http://forum.script-coding.com/viewtopic.php?pid=73941#p73941</link>
			<description><![CDATA[<p>А при чём тут RegExMatch? Она же в тексте ищет. Если имеете в виду преобразовать каждый бит в символ 1 или 0, так это размер считанного будет в 16 раз больше файла, если в юникодном АНК.</p>]]></description>
			<author><![CDATA[null@example.com (YMP)]]></author>
			<pubDate>Sat, 20 Jul 2013 15:29:55 +0000</pubDate>
			<guid>http://forum.script-coding.com/viewtopic.php?pid=73941#p73941</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK:Удаление конкретной строчки из файла]]></title>
			<link>http://forum.script-coding.com/viewtopic.php?pid=73940#p73940</link>
			<description><![CDATA[<p><strong>YMP</strong><br />Может скажу глупость... А если прочитать файл в двоичном\бинарном виде <em>file.RawRead</em>, искомую строку представить тоже как бинарную в формате считываемого файла <em>File.Encoding</em>. RegExMatch найдёт что нужно как 0101... Даст позицию. Разделить её на восемь, вот и нужное смещение.</p>]]></description>
			<author><![CDATA[null@example.com (serzh82saratov)]]></author>
			<pubDate>Sat, 20 Jul 2013 15:16:30 +0000</pubDate>
			<guid>http://forum.script-coding.com/viewtopic.php?pid=73940#p73940</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK:Удаление конкретной строчки из файла]]></title>
			<link>http://forum.script-coding.com/viewtopic.php?pid=73901#p73901</link>
			<description><![CDATA[<div class="quotebox"><cite>serzh82saratov пишет:</cite><blockquote><p>Хотя если подумать то возможно от смещения перезаписать остаток файла, и таким образом удалить таки строку.</p></blockquote></div><p>Ну, если файл сильно большой, это может иметь смысл. Но смещение, действительно, зависит от кодировки. В однобайтных ANSI и в UTF-16 не сложно посчитать, хотя у последнего надо ещё учитывать, если ли в начале файла BOM или нет. А в UTF-8 уже так просто не получится, т.к. в разных символах разное количество байтов. И дальневосточные ANSI, кажись, многобайтные, там тоже сложнее.</p>]]></description>
			<author><![CDATA[null@example.com (YMP)]]></author>
			<pubDate>Fri, 19 Jul 2013 14:41:31 +0000</pubDate>
			<guid>http://forum.script-coding.com/viewtopic.php?pid=73901#p73901</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK:Удаление конкретной строчки из файла]]></title>
			<link>http://forum.script-coding.com/viewtopic.php?pid=73899#p73899</link>
			<description><![CDATA[<p>Хотя если подумать то возможно от смещения перезаписать остаток файла, и таким образом удалить таки строку.</p><div class="codebox"><pre><code>
FileName = C:\Users\sergey\Desktop\new.txt
WriteString := &quot;&quot;
Seek := 12 ; смещение до третьей строки (байт)
Len := 6 ; длинна третьей строки (байт)


File := FileOpen(FileName, &quot;rw&quot;) 
File.Pos := Seek ; смещение 
End := File.Read() ; чтение остатка
End := SubStr(End, Len + 1) 
; здесь надо как-то обрезать начало по количеству байт нужной строки
; так сработает только в CP1251
; как и значения Seek и Len
File.Length := Seek ; обрезаем файл
File.Write(WriteString . End) ; втавляем от смещения то что надо и остаток
File.Pos := 0


MsgBox % File.Read()
File.Close()
</code></pre></div><p>Файл:<br /></p><div class="codebox"><pre><code>
1 str
2 str
3 str
4 str
5 str
6 str
7 str
8 str
9 str
0 str
</code></pre></div><p>Также если прописать </p><div class="codebox"><pre><code>WriteString := &quot;новая строка`n&quot;</code></pre></div><p>то можно заменять строки.</p>]]></description>
			<author><![CDATA[null@example.com (serzh82saratov)]]></author>
			<pubDate>Fri, 19 Jul 2013 12:55:29 +0000</pubDate>
			<guid>http://forum.script-coding.com/viewtopic.php?pid=73899#p73899</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK:Удаление конкретной строчки из файла]]></title>
			<link>http://forum.script-coding.com/viewtopic.php?pid=73898#p73898</link>
			<description><![CDATA[<div class="quotebox"><cite>YMP пишет:</cite><blockquote><p>Ну а строчку непосредственно из файла вы никак не вырежете. Нужно прочитать файл, убрать строчку и то, что осталось, записать обратно в файл.</p></blockquote></div><p>Но если знать в байтах смещение нужной строки и её длинну, то можно &quot;затереть&quot; пробелами. Например в таком файле:<br /></p><div class="codebox"><pre><code>1234567890
1234567890
1234567890
1234567890
1234567890
1234567890</code></pre></div><p> в кодировке CP1251 (ANSI), этот код заменит третью строку пробелами:</p><div class="codebox"><pre><code>FileName = C:\Users\sergey\Desktop\new.txt
TestString := &quot;          &quot; ; 10 пробелов, т.к. знаем что длинна строки 10 символов

File := FileOpen(FileName, &quot;rw&quot;) 
File.Pos := 22 ; смещение в байтах + 2 перевода строки
File.Write(TestString)
File.Pos := 0 ; возвращаем смещение на начало файла
MsgBox % File.Read()
File.Close()</code></pre></div><p>Увы из-за незнания сути кодировок и байтов, универсальный код сделать не могу.</p>]]></description>
			<author><![CDATA[null@example.com (serzh82saratov)]]></author>
			<pubDate>Fri, 19 Jul 2013 12:15:37 +0000</pubDate>
			<guid>http://forum.script-coding.com/viewtopic.php?pid=73898#p73898</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK:Удаление конкретной строчки из файла]]></title>
			<link>http://forum.script-coding.com/viewtopic.php?pid=73646#p73646</link>
			<description><![CDATA[<p>Ну, у меня-то все буквы английские в примере. Стало быть у реального файла русская буква есть.</p>]]></description>
			<author><![CDATA[null@example.com (YMP)]]></author>
			<pubDate>Thu, 11 Jul 2013 04:19:37 +0000</pubDate>
			<guid>http://forum.script-coding.com/viewtopic.php?pid=73646#p73646</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK:Удаление конкретной строчки из файла]]></title>
			<link>http://forum.script-coding.com/viewtopic.php?pid=73643#p73643</link>
			<description><![CDATA[<div class="quotebox"><cite>Irbis пишет:</cite><blockquote><p>Если ТС не шутит, значит имена файлов различные с точки зрения файловой системы ))<br /></p><div class="codebox"><pre><code>if &quot;chatlog.txt&quot; = &quot;сhatlog.txt&quot;
   MsgBox Совпадают
else
   MsgBox Не совпадают
</code></pre></div><div class="fancy_spoiler_switcher"><div class="fancy_spoiler_switcher_header" data-lang-open="открыть спойлер" data-lang-close="скрыть спойлер"><strong>+</strong>&nbsp;открыть спойлер</div><div class="fancy_spoiler"><p>в первом &quot;c&quot; английская, во втором &quot;c&quot; - русская</p></div></div></blockquote></div><p>Не совпадают</p>]]></description>
			<author><![CDATA[null@example.com (sergeiplugatyr)]]></author>
			<pubDate>Wed, 10 Jul 2013 15:42:22 +0000</pubDate>
			<guid>http://forum.script-coding.com/viewtopic.php?pid=73643#p73643</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK:Удаление конкретной строчки из файла]]></title>
			<link>http://forum.script-coding.com/viewtopic.php?pid=73641#p73641</link>
			<description><![CDATA[<p>Если ТС не шутит, значит имена файлов различные с точки зрения файловой системы ))<br /></p><div class="codebox"><pre><code>if &quot;chatlog.txt&quot; = &quot;сhatlog.txt&quot;
   MsgBox Совпадают
else
   MsgBox Не совпадают
</code></pre></div><div class="fancy_spoiler_switcher"><div class="fancy_spoiler_switcher_header" data-lang-open="открыть спойлер" data-lang-close="скрыть спойлер"><strong>+</strong>&nbsp;открыть спойлер</div><div class="fancy_spoiler"><p>в первом &quot;c&quot; английская, во втором &quot;c&quot; - русская</p></div></div>]]></description>
			<author><![CDATA[null@example.com (Irbis)]]></author>
			<pubDate>Wed, 10 Jul 2013 14:39:05 +0000</pubDate>
			<guid>http://forum.script-coding.com/viewtopic.php?pid=73641#p73641</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK:Удаление конкретной строчки из файла]]></title>
			<link>http://forum.script-coding.com/viewtopic.php?pid=73638#p73638</link>
			<description><![CDATA[<div class="quotebox"><cite>sergeiplugatyr пишет:</cite><blockquote><p>Вроде бы нет, но скрипт утверждает обратное.</p></blockquote></div><p>Это как?</p>]]></description>
			<author><![CDATA[null@example.com (YMP)]]></author>
			<pubDate>Wed, 10 Jul 2013 14:19:29 +0000</pubDate>
			<guid>http://forum.script-coding.com/viewtopic.php?pid=73638#p73638</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK:Удаление конкретной строчки из файла]]></title>
			<link>http://forum.script-coding.com/viewtopic.php?pid=73635#p73635</link>
			<description><![CDATA[<div class="quotebox"><cite>serzh82saratov пишет:</cite><blockquote><p>То есть в вашем виндовс, у вас в одной папке могут жить 2 файла с одинаковым именем?</p></blockquote></div><p>Вроде бы нет, но скрипт утверждает обратное.</p>]]></description>
			<author><![CDATA[null@example.com (sergeiplugatyr)]]></author>
			<pubDate>Wed, 10 Jul 2013 12:58:30 +0000</pubDate>
			<guid>http://forum.script-coding.com/viewtopic.php?pid=73635#p73635</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK:Удаление конкретной строчки из файла]]></title>
			<link>http://forum.script-coding.com/viewtopic.php?pid=73623#p73623</link>
			<description><![CDATA[<p>То есть в вашем виндовс, у вас в одной папке могут жить 2 файла с одинаковым именем?</p>]]></description>
			<author><![CDATA[null@example.com (serzh82saratov)]]></author>
			<pubDate>Wed, 10 Jul 2013 11:51:06 +0000</pubDate>
			<guid>http://forum.script-coding.com/viewtopic.php?pid=73623#p73623</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK:Удаление конкретной строчки из файла]]></title>
			<link>http://forum.script-coding.com/viewtopic.php?pid=73619#p73619</link>
			<description><![CDATA[<div class="quotebox"><cite>serzh82saratov пишет:</cite><blockquote><p>Где создаёт?</p></blockquote></div><p>Рядом с этим файлом chatlog.txt он создает точно такой же файл chatlog.txt, только пустой</p>]]></description>
			<author><![CDATA[null@example.com (sergeiplugatyr)]]></author>
			<pubDate>Wed, 10 Jul 2013 10:54:47 +0000</pubDate>
			<guid>http://forum.script-coding.com/viewtopic.php?pid=73619#p73619</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK:Удаление конкретной строчки из файла]]></title>
			<link>http://forum.script-coding.com/viewtopic.php?pid=73617#p73617</link>
			<description><![CDATA[<p>Где создаёт?</p>]]></description>
			<author><![CDATA[null@example.com (serzh82saratov)]]></author>
			<pubDate>Wed, 10 Jul 2013 10:28:13 +0000</pubDate>
			<guid>http://forum.script-coding.com/viewtopic.php?pid=73617#p73617</guid>
		</item>
	</channel>
</rss>
