<?xml version='1.0' encoding="utf-8"?>
      <rss version='2.0'>
      <channel>
      <title>Форум на Исходниках.RU</title>
      <link>https://forum.sources.ru</link>
      <description>Форум на Исходниках.RU</description>
      <generator>Форум на Исходниках.RU</generator>
  	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=256693&amp;view=findpost&amp;p=2119008</guid>
        <pubDate>Tue, 18 Nov 2008 16:42:34 +0000</pubDate>
        <title>ошибка чтения файла</title>
        <link>https://forum.sources.ru/index.php?showtopic=256693&amp;view=findpost&amp;p=2119008</link>
        <description><![CDATA[RuSA: Еще есть такой вариант:<br>
<div class='tag-code'><span class='pre_code'></span><div class='code  code_collapsed ' title='Подсветка синтаксиса доступна зарегистрированным участникам Форума.' style=''><div><div><ol type="1"><div class="code_line">procedure TForm1.Button1Click(Sender: TObject);</div><div class="code_line">var</div><div class="code_line">&nbsp;&nbsp; f: file of real;</div><div class="code_line">&nbsp;&nbsp; c: real;</div><div class="code_line">begin</div><div class="code_line">&nbsp;&nbsp; Assignfile(f,&#39;file.bin&#39;);</div><div class="code_line">&nbsp;&nbsp; reset(f);</div><div class="code_line">&nbsp;&nbsp; try // finally</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;while not eof(f) do</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;begin</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; read(f,c); &nbsp; &nbsp;// (!) очень близко к смыслу :)</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;end; // while</div><div class="code_line">&nbsp;&nbsp; finally</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;CloseFile(f);</div><div class="code_line">&nbsp;&nbsp; end; // finally</div><div class="code_line">end;</div></ol></div></div></div></div><script>preloadCodeButtons('1');</script>]]></description>
        <author>RuSA</author>
        <category>Delphi: Общие вопросы</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=256693&amp;view=findpost&amp;p=2118926</guid>
        <pubDate>Tue, 18 Nov 2008 15:02:50 +0000</pubDate>
        <title>ошибка чтения файла</title>
        <link>https://forum.sources.ru/index.php?showtopic=256693&amp;view=findpost&amp;p=2118926</link>
        <description><![CDATA[leo: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=256693&view=findpost&p=2118890'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>Umnik1 &#064; <time class="tag-quote__quoted-time" datetime="2008-11-18T14:34:21+00:00">18.11.08, 14:34</time></span><div class='quote '>почему 1?</div></div><br>
Вроде уже объяснил - в blockread&#092;write в общем случае передается не размер в байтах, а Count - число &quot;единиц&quot;=&quot;записей&quot; размером RecSize. При RecSize=1 мы работаем с байтами и размер задаем в байтах. Для чтения последовательности real можно также использовать reset(f,sizeof(real)) + blockread(f,c,1), т.е. читать по одной записи размером sizeof(real)]]></description>
        <author>leo</author>
        <category>Delphi: Общие вопросы</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=256693&amp;view=findpost&amp;p=2118890</guid>
        <pubDate>Tue, 18 Nov 2008 14:34:21 +0000</pubDate>
        <title>ошибка чтения файла</title>
        <link>https://forum.sources.ru/index.php?showtopic=256693&amp;view=findpost&amp;p=2118890</link>
        <description><![CDATA[Umnik1: о, вроде заработала))<br> я думал сначала писать reset(f,4) но тоже ошибка была. почему 1?]]></description>
        <author>Umnik1</author>
        <category>Delphi: Общие вопросы</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=256693&amp;view=findpost&amp;p=2118880</guid>
        <pubDate>Tue, 18 Nov 2008 14:26:29 +0000</pubDate>
        <title>ошибка чтения файла</title>
        <link>https://forum.sources.ru/index.php?showtopic=256693&amp;view=findpost&amp;p=2118880</link>
        <description><![CDATA[leo: reset(f<span class="tag-color tag-color-named" data-value="red" style="color: red">,1</span>); <br>
<br>
<span class="tag-color tag-color-named" data-value="gray" style="color: gray"><span class='tag-size' data-value='7' style='font-size:7pt;'>Добавлено <time class="tag-mergetime" datetime="2008-11-18T14:31:37+00:00">18.11.08, 14:31</time></span></span><br>
PS: Если не указывать RecSize, то по умолчанию берется 128 байт и при каждом blockread будет читаться не sizeof&copy;, а sizeof&copy;*128 байт]]></description>
        <author>leo</author>
        <category>Delphi: Общие вопросы</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=256693&amp;view=findpost&amp;p=2118876</guid>
        <pubDate>Tue, 18 Nov 2008 14:23:55 +0000</pubDate>
        <title>ошибка чтения файла</title>
        <link>https://forum.sources.ru/index.php?showtopic=256693&amp;view=findpost&amp;p=2118876</link>
        <description><![CDATA[Umnik1: Надо прочитать bin файл с действительными числами. Пишу:<br><br>procedure TForm1.Button1Click(Sender: TObject);<br>var<br>f: file;<br>c: real;<br><br>begin<br><br>Assignfile(f,&#39;file.bin&#39;);<br>reset(f);<br>while not eof(f) do<br>begin<br>blockread(f,c,sizeof(c));<br>end;<br>CloseFile(f);<br><br>end;<br><br>выдается: project1.exe raised exception class EinOutError with message &#39;read beyond end of file&#39;. Process stopped.<br><br>Что не так?]]></description>
        <author>Umnik1</author>
        <category>Delphi: Общие вопросы</category>
      </item>
	
      </channel>
      </rss>
	