<?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[.dat datei auslesen]]></title><description><![CDATA[<p>hallo<br />
ich bin neu hier <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f642.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--slightly_smiling_face"
      title=":-)"
      alt="🙂"
    /></p>
<p>hab ein problem beim auslesen einer .dat datei<br />
in der dat datei sind bsp. sind die ersten 10 zahlen in einer spalte.<br />
mein code ist:</p>
<pre><code class="language-cpp">#include&lt;iostream&gt;
#include&lt;fstream&gt;
#include&lt;iomanip&gt;

int main(){
        double temp;
	ifstream myfile(&quot;data.dat&quot;, ios::in);
	if (myfile.good()) {

         myfile.seekg(0L, ios::beg);
		while (!myfile.eof()) {

		myfile &gt;&gt; temp 		
	        if ( !myfile.fail()){
                cout &lt;&lt; temp &lt;&lt; endl;

			}
		}
}
	else
		cout &lt;&lt; &quot;Error! Can not read out data.dat&quot; &lt;&lt; endl;
</code></pre>
<p>mein problem ist nun, dass ich das programm die letzte zahl 2 mal ausgibt.<br />
wenn ich meine ausgabe cout &lt;&lt; temp &lt;&lt; endl;<br />
mit einer if ( !myfile.fail()) abfrage umgebe, dann klappts.<br />
ich wollte trotzdem mal fragen was da los ist, denn ich versteh nicht wirklich die einzelnen codeteile; habs eher aus einem buch gestohlen <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f61b.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_with_tongue"
      title=":P"
      alt="😛"
    /></p>
<p>ok sry falls der code so schlecht lesbar ist <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f642.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--slightly_smiling_face"
      title=":-)"
      alt="🙂"
    /> bin in c nicht so fit und im forum auch nicht<br />
okay liebe grüße &amp; danke <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";)"
      alt="😉"
    /></p>
<p>Edit: Codetags hinzugefügt - evilissimo</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/235662/dat-datei-auslesen</link><generator>RSS for Node</generator><lastBuildDate>Thu, 24 Sep 2026 04:07:37 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/235662.rss" rel="self" type="application/rss+xml"/><pubDate>Wed, 04 Mar 2009 20:23:13 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to .dat datei auslesen on Thu, 05 Mar 2009 12:53:52 GMT]]></title><description><![CDATA[<p>hallo<br />
ich bin neu hier <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f642.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--slightly_smiling_face"
      title=":-)"
      alt="🙂"
    /></p>
<p>hab ein problem beim auslesen einer .dat datei<br />
in der dat datei sind bsp. sind die ersten 10 zahlen in einer spalte.<br />
mein code ist:</p>
<pre><code class="language-cpp">#include&lt;iostream&gt;
#include&lt;fstream&gt;
#include&lt;iomanip&gt;

int main(){
        double temp;
	ifstream myfile(&quot;data.dat&quot;, ios::in);
	if (myfile.good()) {

         myfile.seekg(0L, ios::beg);
		while (!myfile.eof()) {

		myfile &gt;&gt; temp 		
	        if ( !myfile.fail()){
                cout &lt;&lt; temp &lt;&lt; endl;

			}
		}
}
	else
		cout &lt;&lt; &quot;Error! Can not read out data.dat&quot; &lt;&lt; endl;
</code></pre>
<p>mein problem ist nun, dass ich das programm die letzte zahl 2 mal ausgibt.<br />
wenn ich meine ausgabe cout &lt;&lt; temp &lt;&lt; endl;<br />
mit einer if ( !myfile.fail()) abfrage umgebe, dann klappts.<br />
ich wollte trotzdem mal fragen was da los ist, denn ich versteh nicht wirklich die einzelnen codeteile; habs eher aus einem buch gestohlen <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f61b.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_with_tongue"
      title=":P"
      alt="😛"
    /></p>
<p>ok sry falls der code so schlecht lesbar ist <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f642.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--slightly_smiling_face"
      title=":-)"
      alt="🙂"
    /> bin in c nicht so fit und im forum auch nicht<br />
okay liebe grüße &amp; danke <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";)"
      alt="😉"
    /></p>
<p>Edit: Codetags hinzugefügt - evilissimo</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1674370</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1674370</guid><dc:creator><![CDATA[Phecda]]></dc:creator><pubDate>Thu, 05 Mar 2009 12:53:52 GMT</pubDate></item><item><title><![CDATA[Reply to .dat datei auslesen on Wed, 04 Mar 2009 20:31:28 GMT]]></title><description><![CDATA[<p>beim auslesen des letzten double ist er wahrscheinlich noch nicht bei eof und versucht dann nochmal ein double zu lesen, was dann failed.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1674377</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1674377</guid><dc:creator><![CDATA[vermutung]]></dc:creator><pubDate>Wed, 04 Mar 2009 20:31:28 GMT</pubDate></item><item><title><![CDATA[Reply to .dat datei auslesen on Wed, 04 Mar 2009 20:35:33 GMT]]></title><description><![CDATA[<p>ja genau</p>
<p>while(!myfile.eof())</p>
<p>ist bei fstream nicht das was es bei anderen verfahren ist. das eof flag wird erst gesetzt wenn er die nächsten bytes lesen will aber nichts mehr da ist. der inhalt in while wird nochmal ausgeführt obwohl er nichts mehr auslesen kann.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1674379</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1674379</guid><dc:creator><![CDATA[apfelessig]]></dc:creator><pubDate>Wed, 04 Mar 2009 20:35:33 GMT</pubDate></item><item><title><![CDATA[Reply to .dat datei auslesen on Wed, 04 Mar 2009 20:36:23 GMT]]></title><description><![CDATA[<p>mhh<br />
das versteh ich eigentlich nicht so ganz<br />
und wie kann man das ändern?<br />
wenn ich eine do schleife mach dann klappts auch nicht</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1674380</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1674380</guid><dc:creator><![CDATA[Phecda]]></dc:creator><pubDate>Wed, 04 Mar 2009 20:36:23 GMT</pubDate></item><item><title><![CDATA[Reply to .dat datei auslesen on Wed, 04 Mar 2009 20:47:15 GMT]]></title><description><![CDATA[<p>Phecda schrieb:</p>
<blockquote>
<p>mhh<br />
das versteh ich eigentlich nicht so ganz<br />
und wie kann man das ändern?<br />
wenn ich eine do schleife mach dann klappts auch nicht</p>
</blockquote>
<p>Das heißt, Du solltest erst die Zahl lesen und danach erst prüfen, ob das Lesen ok war. Das EOF-Flag ist nicht zuverlässig, ob die letzte Zahl gelesen wurde oder nicht. Das hängt davon ab, ob hinter der letzten Zahl noch Leerzeichen kommen oder direkt das Dateiende. Mache einfach:</p>
<pre><code class="language-cpp">#include &lt;iostream&gt;
#include &lt;fstream&gt;

int main()
{
    using namespace std;
    ifstream myfile(&quot;data.dat&quot;);
    if( myfile.good() ) 
    {
        for( double temp; myfile &gt;&gt; temp; )
        {
            cout &lt;&lt; temp &lt;&lt; endl;
        }
    }
    else
        cout &lt;&lt; &quot;Error! Can not read out data.dat&quot; &lt;&lt; endl; 
    return 0;
}
</code></pre>
<p>Gruß<br />
Werner</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1674387</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1674387</guid><dc:creator><![CDATA[Werner Salomon]]></dc:creator><pubDate>Wed, 04 Mar 2009 20:47:15 GMT</pubDate></item><item><title><![CDATA[Reply to .dat datei auslesen on Thu, 05 Mar 2009 12:46:39 GMT]]></title><description><![CDATA[<p>hi<br />
okay so funtioniert das sehr gut:-)<br />
das mit der for sieht ja echt cool aus, hab gar nicht gewusst, dass man sowas machen kann. wird die temp datei immer wieder neu angelegt? kann ich da beliebig viele anweisungen reinschreiben?</p>
<p>kurz noch ne frage, weil ich neu bin<br />
wie tut ihr immer die codes extra so darstellen?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1674610</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1674610</guid><dc:creator><![CDATA[Phecda]]></dc:creator><pubDate>Thu, 05 Mar 2009 12:46:39 GMT</pubDate></item><item><title><![CDATA[Reply to .dat datei auslesen on Thu, 05 Mar 2009 12:48:09 GMT]]></title><description><![CDATA[<p>Mittels den C++ Tags.</p>
<p>Siehe unter den Smilies da steht ein Kasten, in dem Steht &quot;C/C++&quot; klickst du dort einmal drauf, wird ein Tag geöffnet, du postest dein Code und wenn du fertig bist, klickst du einfach nochmal drauf dann wird er wieder geschlossen <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f642.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--slightly_smiling_face"
      title=":)"
      alt="🙂"
    /> Für nähere Infos schau mal in den FAQ</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1674612</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1674612</guid><dc:creator><![CDATA[Firefighter]]></dc:creator><pubDate>Thu, 05 Mar 2009 12:48:09 GMT</pubDate></item></channel></rss>