<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[fstream findet kein eof]]></title><description><![CDATA[<p>Hallo<br />
Leider findet fstream kein eof und macht die Endlosschleife.</p>
<p>central.open(&quot;central_D.txt&quot;, ios::in | ios::out | ios::ate);</p>
<p>...</p>
<p>while (!central.eof())<br />
{<br />
central.seekg(58,ios::cur);<br />
central &gt;&gt; strName;<br />
if (strName == strKontoName )<br />
{<br />
central.seekg(-58 - strName.length(), ios::cur);<br />
central &gt;&gt; strcnt;</p>
<p>...</p>
<p>Kann mir Jemand dabei helfen ?<br />
Vielen Dank<br />
Vladimir</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/241553/fstream-findet-kein-eof</link><generator>RSS for Node</generator><lastBuildDate>Mon, 21 Sep 2026 09:47:47 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/241553.rss" rel="self" type="application/rss+xml"/><pubDate>Fri, 22 May 2009 11:37:51 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to fstream findet kein eof on Fri, 22 May 2009 11:37:51 GMT]]></title><description><![CDATA[<p>Hallo<br />
Leider findet fstream kein eof und macht die Endlosschleife.</p>
<p>central.open(&quot;central_D.txt&quot;, ios::in | ios::out | ios::ate);</p>
<p>...</p>
<p>while (!central.eof())<br />
{<br />
central.seekg(58,ios::cur);<br />
central &gt;&gt; strName;<br />
if (strName == strKontoName )<br />
{<br />
central.seekg(-58 - strName.length(), ios::cur);<br />
central &gt;&gt; strcnt;</p>
<p>...</p>
<p>Kann mir Jemand dabei helfen ?<br />
Vielen Dank<br />
Vladimir</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1714125</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1714125</guid><dc:creator><![CDATA[rosic]]></dc:creator><pubDate>Fri, 22 May 2009 11:37:51 GMT</pubDate></item><item><title><![CDATA[Reply to fstream findet kein eof on Fri, 22 May 2009 12:13:36 GMT]]></title><description><![CDATA[<p>Das <code>eofbit</code> Flag wird erst gesetzt, wenn du über das Dateiende hinausgelesen hast. Wenn du also genau auf das Ende stösst, wird das <code>eofbit</code> nicht gesetzt und mit <code>central.seekg(58,ios::cur);</code> geht es natürlich wieder an diese Position in der Datei. Daher kommt wohl die Endlosschleife.</p>
<p>Verlässlich ist eigentlich hauptsächlich, wenn du den Stream auf Gültigkeit prüfst, nach jeder Leseoperation. Also zum Beispiel wenn du in einer Textdatei alle Wörter einzeln einlesen willst:</p>
<pre><code class="language-cpp">std::ifstream file(&quot;...&quot;);
std::string word;

while(file &gt;&gt; word) // Solange einlesen, wie das einlesen funktioniert,
{                   // bzw. der Stream gültig ist.
  // ...
}
</code></pre>
<p>Grüssli</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1714146</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1714146</guid><dc:creator><![CDATA[Dravere]]></dc:creator><pubDate>Fri, 22 May 2009 12:13:36 GMT</pubDate></item><item><title><![CDATA[Reply to fstream findet kein eof on Fri, 22 May 2009 13:05:15 GMT]]></title><description><![CDATA[<p>Danke für die hilfreiche Antwort<br />
(Wenn das Programm mit seekg über eofbit Flag drüber geht,<br />
wird kein eof erkannt ? (wenn ich es richtig verstanden habe))</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1714198</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1714198</guid><dc:creator><![CDATA[rosic]]></dc:creator><pubDate>Fri, 22 May 2009 13:05:15 GMT</pubDate></item><item><title><![CDATA[Reply to fstream findet kein eof on Fri, 22 May 2009 13:16:29 GMT]]></title><description><![CDATA[<p>rosic schrieb:</p>
<blockquote>
<p>(Wenn das Programm mit seekg über eofbit Flag drüber geht,<br />
wird kein eof erkannt ? (wenn ich es richtig verstanden habe))</p>
</blockquote>
<p>Das habe ich zwar nicht gesagt, aber soweit ich mich erinnere, kann ganz sicher nicht bei <code>seekg</code> ein <code>eofbit</code> gesetzt werden. Es wäre höchstens ein <code>badbit</code> oder <code>failbit</code> möglich. Allerdings haben die, glaub ich, nichts mit der Position an sich zu tun. Ich müsste allerdings zuerst im Standard nachlesen gehen, um dies mit absoluter Sicherheit zu sagen.</p>
<p>Um das Ende von einer Datei zu erkennen, sind die Methoden <code>eof</code> , <code>bad</code> und <code>fail</code> allerdings meistens ungeeignet.</p>
<p>Grüssli</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1714217</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1714217</guid><dc:creator><![CDATA[Dravere]]></dc:creator><pubDate>Fri, 22 May 2009 13:16:29 GMT</pubDate></item></channel></rss>