<?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 Problem]]></title><description><![CDATA[<pre><code>int main()
{
   int len=20;
   char buffer[200];
   char buffer2[200];
   fstream fs(&quot;test.txt&quot;,ios::binary|ios::out);
   cout&lt;&lt;&quot;\nText: &quot;;
   scanf(&quot;%d&quot;,buffer);
   fs.write(buffer,sizeof(len));
   printf(&quot;%d&quot;,buffer);
   fs.read(buffer2,sizeof(len));
   printf(&quot;%d&quot;,buffer2);

if(buffer==buffer2)
{
   printf(&quot;\nTest erfolgreich...&quot;);
}
   return 0;
}
</code></pre>
<p>Das Problem ist das der Test NICHT erfolgreich ist. Warum nicht?<br />
Wie schreibe ich einen int Wert in eine Textdatei um ihn später wieder auszulesen und der Wert auch der tatsächliche ist?</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/132441/fstream-problem</link><generator>RSS for Node</generator><lastBuildDate>Thu, 27 Aug 2026 10:46:41 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/132441.rss" rel="self" type="application/rss+xml"/><pubDate>Tue, 10 Jan 2006 21:36:11 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to FSTREAM Problem on Tue, 10 Jan 2006 21:36:11 GMT]]></title><description><![CDATA[<pre><code>int main()
{
   int len=20;
   char buffer[200];
   char buffer2[200];
   fstream fs(&quot;test.txt&quot;,ios::binary|ios::out);
   cout&lt;&lt;&quot;\nText: &quot;;
   scanf(&quot;%d&quot;,buffer);
   fs.write(buffer,sizeof(len));
   printf(&quot;%d&quot;,buffer);
   fs.read(buffer2,sizeof(len));
   printf(&quot;%d&quot;,buffer2);

if(buffer==buffer2)
{
   printf(&quot;\nTest erfolgreich...&quot;);
}
   return 0;
}
</code></pre>
<p>Das Problem ist das der Test NICHT erfolgreich ist. Warum nicht?<br />
Wie schreibe ich einen int Wert in eine Textdatei um ihn später wieder auszulesen und der Wert auch der tatsächliche ist?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/963130</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/963130</guid><dc:creator><![CDATA[LeeCt]]></dc:creator><pubDate>Tue, 10 Jan 2006 21:36:11 GMT</pubDate></item><item><title><![CDATA[Reply to FSTREAM Problem on Tue, 10 Jan 2006 22:15:04 GMT]]></title><description><![CDATA[<p>lass dir die zwei buffer doch mal ausgeben <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>das problem ist, dass die beiden buffer eigentlich nur zeiger auf das erste element in den feldern sind. und da die felder an verschiedenen addressen liegen, ist &quot;buffer1 == buffer2&quot; offensichtlich immer false.<br />
was du machen könntest ist, die felder zeichenweise (in einer schleife) zu vergleichen.<br />
oder die funktion strcmp (oder so ähnlich) zu benutzen</p>
<p>was du machen solltest ist, std::string anstatt char[] zu benutzen.</p>
<p>und dir im faq-bereich die themen durchzulesen, wo &quot;string&quot; vorkommt. (ich fürchte aber, der strings-vergleichen-thread heißt irgendwie komisch. oder es gibt ihn nicht. aber wahrscheinlich hab ich ihn jetzt auf die schnelle einfach nicht gefunden)</p>
]]></description><link>https://www.c-plusplus.net/forum/post/963150</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/963150</guid><dc:creator><![CDATA[f0pper]]></dc:creator><pubDate>Tue, 10 Jan 2006 22:15:04 GMT</pubDate></item><item><title><![CDATA[Reply to FSTREAM Problem on Tue, 10 Jan 2006 22:44:37 GMT]]></title><description><![CDATA[<p>Wenn ich den Code compilie funktioniert allerdings auch die Ausgabe mit printf nicht richtig, also ist der Vergleich nicht das einzige Problem</p>
<p>mgf.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/963172</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/963172</guid><dc:creator><![CDATA[joomoo]]></dc:creator><pubDate>Tue, 10 Jan 2006 22:44:37 GMT</pubDate></item><item><title><![CDATA[Reply to FSTREAM Problem on Tue, 10 Jan 2006 22:49:01 GMT]]></title><description><![CDATA[<p>ist ja auch klar, erstens ist der datei(schreib-)pointer schon<br />
am ende, nachdem du was geschrieben hast, außerdem ist die<br />
datei write-only geöffnet. also nochmal zum lesen öffnen.<br />
oder als rw öffnen, und nach dem schreiben zurückspulen.</p>
<pre><code>int main()
{
   int len=20;
   char buffer[200];
   char buffer2[200];
   fstream fs(&quot;test.txt&quot;,ios::binary|ios::out);
   cout&lt;&lt;&quot;\nText: &quot;;
   scanf(&quot;%d&quot;,buffer);
   fs.write(buffer,sizeof(len));
   printf(&quot;%d&quot;,buffer);
 // ***********************************************************
 // &lt;= hier müsstest du den stream schließen, und zum lesen
 // (&quot;ios::in&quot; glaube ich) öffnen
 // ***********************************************************
   fs.read(buffer2,sizeof(len));
   printf(&quot;%d&quot;,buffer2);

if(buffer==buffer2)
{
   printf(&quot;\nTest erfolgreich...&quot;);
}
   return 0;
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/963176</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/963176</guid><dc:creator><![CDATA[f0pper]]></dc:creator><pubDate>Tue, 10 Jan 2006 22:49:01 GMT</pubDate></item></channel></rss>