<?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[Dateien: lesen&#x2F;schreiben]]></title><description><![CDATA[<p>Hallo,</p>
<p>ich soll eine Art Logfile für Objekte programmieren, welche sich auf der Konsole bewegen.</p>
<p>Das Schreiben in eine Datei funktioniert einwandfrei:</p>
<pre><code class="language-cpp">ostringstream filename;
  filename &lt;&lt; &quot;Crashlog-&quot; &lt;&lt; pFC-&gt;getID() &lt;&lt; &quot;.dat&quot;;
  ofstream fout(filename.str().c_str(), ios::binary | ios::app);
  toStream(fout);
  fout.close();
</code></pre>
<pre><code class="language-cpp">void CrashRecorder::toStream( ostream&amp; os ) 
{
  os &lt;&lt; daten[dz].crashtime &lt;&lt; &quot;, &quot; &lt;&lt; daten[dz].id &lt;&lt; &quot;, &quot; &lt;&lt; daten[dz].loc.xAxis &lt;&lt; &quot;, &quot; 
  &lt;&lt; daten[dz].loc.yAxis &lt;&lt; &quot;, &quot; &lt;&lt; daten[dz].dir &lt;&lt; &quot;, &quot; &lt;&lt; daten[dz].action &lt;&lt; endl;
}
</code></pre>
<p>Allerdings weiß ich einfach nicht weiter, wie ich diese Daten dann wieder ausgeben kann.</p>
<pre><code class="language-cpp">ifstream fin(filename.str().c_str(), ios::binary );
  fromStream(fin);
  fin.close();
</code></pre>
<pre><code class="language-cpp">void CrashRecorder::fromStream( istream&amp; is ) 
{
  is &gt;&gt; daten[dz].crashtime;
}
</code></pre>
<p>Es kommt keine Ausgabe. Wie kann ich das lösen und was ist das Problem?</p>
<p>MfG skizZ</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/229230/dateien-lesen-schreiben</link><generator>RSS for Node</generator><lastBuildDate>Mon, 28 Sep 2026 00:45:05 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/229230.rss" rel="self" type="application/rss+xml"/><pubDate>Tue, 09 Dec 2008 11:19:42 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Dateien: lesen&#x2F;schreiben on Tue, 09 Dec 2008 11:19:42 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>ich soll eine Art Logfile für Objekte programmieren, welche sich auf der Konsole bewegen.</p>
<p>Das Schreiben in eine Datei funktioniert einwandfrei:</p>
<pre><code class="language-cpp">ostringstream filename;
  filename &lt;&lt; &quot;Crashlog-&quot; &lt;&lt; pFC-&gt;getID() &lt;&lt; &quot;.dat&quot;;
  ofstream fout(filename.str().c_str(), ios::binary | ios::app);
  toStream(fout);
  fout.close();
</code></pre>
<pre><code class="language-cpp">void CrashRecorder::toStream( ostream&amp; os ) 
{
  os &lt;&lt; daten[dz].crashtime &lt;&lt; &quot;, &quot; &lt;&lt; daten[dz].id &lt;&lt; &quot;, &quot; &lt;&lt; daten[dz].loc.xAxis &lt;&lt; &quot;, &quot; 
  &lt;&lt; daten[dz].loc.yAxis &lt;&lt; &quot;, &quot; &lt;&lt; daten[dz].dir &lt;&lt; &quot;, &quot; &lt;&lt; daten[dz].action &lt;&lt; endl;
}
</code></pre>
<p>Allerdings weiß ich einfach nicht weiter, wie ich diese Daten dann wieder ausgeben kann.</p>
<pre><code class="language-cpp">ifstream fin(filename.str().c_str(), ios::binary );
  fromStream(fin);
  fin.close();
</code></pre>
<pre><code class="language-cpp">void CrashRecorder::fromStream( istream&amp; is ) 
{
  is &gt;&gt; daten[dz].crashtime;
}
</code></pre>
<p>Es kommt keine Ausgabe. Wie kann ich das lösen und was ist das Problem?</p>
<p>MfG skizZ</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1627538</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1627538</guid><dc:creator><![CDATA[skizZ]]></dc:creator><pubDate>Tue, 09 Dec 2008 11:19:42 GMT</pubDate></item><item><title><![CDATA[Reply to Dateien: lesen&#x2F;schreiben on Tue, 09 Dec 2008 11:43:00 GMT]]></title><description><![CDATA[<p>Sowas schon mal versucht?</p>
<pre><code class="language-cpp">#include &lt;iostream&gt;
#include &lt;fstream&gt;
#include &lt;windows&gt;
using namespace std;

int main()
{
string name;
char *text_aus_datei = &quot;test.txt&quot;;

ifstream datei;

datei.open(text_aus_datei);

       datei&gt;&gt;text_aus_datei;
       datei.close();

        cout&lt;&lt;text_aus_datei;     //text ausgeben

return 0;
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1627553</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1627553</guid><dc:creator><![CDATA[datei]]></dc:creator><pubDate>Tue, 09 Dec 2008 11:43:00 GMT</pubDate></item><item><title><![CDATA[Reply to Dateien: lesen&#x2F;schreiben on Tue, 09 Dec 2008 11:51:51 GMT]]></title><description><![CDATA[<p>Hi,</p>
<p>danke erstmal.</p>
<p>allerdings bleibt &quot;datei&quot; leer. Es wird nichts in den Puffer geschrieben <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f61e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--disappointed_face"
      title=":-("
      alt="😞"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1627556</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1627556</guid><dc:creator><![CDATA[skizZ]]></dc:creator><pubDate>Tue, 09 Dec 2008 11:51:51 GMT</pubDate></item><item><title><![CDATA[Reply to Dateien: lesen&#x2F;schreiben on Wed, 10 Dec 2008 09:17:42 GMT]]></title><description><![CDATA[<p>Hat denn sonst keiner ne Idee?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1628053</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1628053</guid><dc:creator><![CDATA[skizZ1]]></dc:creator><pubDate>Wed, 10 Dec 2008 09:17:42 GMT</pubDate></item><item><title><![CDATA[Reply to Dateien: lesen&#x2F;schreiben on Wed, 10 Dec 2008 09:22:55 GMT]]></title><description><![CDATA[<p>Ist doch auch klar das nichts in den Puffer geschrieben wird, in dem Beispiel wird ja auch die Datei gelesen, und alles was aus dem Stream kommt wird in das &quot;text_aus_datei&quot; geschrieben. Wenn du eine ganze datei lesen willst probier es mal so</p>
<pre><code class="language-cpp">#include&lt;iostream&gt;
#include&lt;fstream&gt;
#include&lt;string&gt;

int main()
{
  std::ifstream datei(&quot;Deinedatei.txt&quot;);
  std::string was_aus_der_datei_kommt;

  while(getline(date,was_aus_der_datei_kommt))
  {
     std::cout&lt;&lt;was_aus_der_datei_kommt&lt;&lt;std::endl;
  }

datei.close();

return 0;
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1628058</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1628058</guid><dc:creator><![CDATA[Firefighter]]></dc:creator><pubDate>Wed, 10 Dec 2008 09:22:55 GMT</pubDate></item><item><title><![CDATA[Reply to Dateien: lesen&#x2F;schreiben on Wed, 10 Dec 2008 09:43:59 GMT]]></title><description><![CDATA[<p>Hi,</p>
<p>super! das funktioniert schonmal.</p>
<p>Ist es auch möglich nur die letzten 10 Zeilen aus einer Datei auszulesen?</p>
<p>Und wie genau kann ich da umsetzen, dass sich der Dateiname aus Text + Variable zusammensetzt?</p>
<p>Da die Logfiles den Namen haben</p>
<p>Crashlog-&lt;Variable&gt;.dat</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1628077</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1628077</guid><dc:creator><![CDATA[skizZ]]></dc:creator><pubDate>Wed, 10 Dec 2008 09:43:59 GMT</pubDate></item><item><title><![CDATA[Reply to Dateien: lesen&#x2F;schreiben on Wed, 10 Dec 2008 10:17:08 GMT]]></title><description><![CDATA[<p>hi</p>
<p>ich hab es auch mal gelöst in dem vector hast du dann die gesamte datei und kannst damit machen was du willst.</p>
<pre><code class="language-cpp">#include &lt;iostream&gt;
#include &lt;fstream&gt;
#include &lt;string&gt;
#include &lt;vector&gt;
using namespace std;

int main()
{
    string name=&quot;&quot;;
    ifstream datei(&quot;test.txt&quot;);
    vector&lt;string&gt; data_input;
    while(getline(datei, name))
    {
         data_input.push_back(name);
        cout &lt;&lt; name &lt;&lt; endl;
    }
    datei.close();
    for(int i=0;i&lt;data_input.size();i++)
    {
        cout &lt;&lt; data_input[i] &lt;&lt; endl;
    }
    return 0;
}
</code></pre>
<p>das mit dem dateinamen könntest du vlt so machen</p>
<pre><code class="language-cpp">#include &lt;iostream&gt;
#include &lt;fstream&gt;
#include &lt;string&gt;
#include &lt;vector&gt;
#include &lt;sstream&gt;
using namespace std;

int main()
{
    string test=&quot;test&quot;;
    ifstream datei;
    stringstream out;
    out &lt;&lt; 5;
    test+=out.str();
    cout &lt;&lt; endl &lt;&lt; endl &lt;&lt; test &lt;&lt; endl;
    datei.open(test.c_str());
    datei.close();

    return 0;
}
</code></pre>
<p>mit einen weiteren += kannst du dann noch die dateiendung mit anfügen.</p>
<p>MFG</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1628086</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1628086</guid><dc:creator><![CDATA[blups0r]]></dc:creator><pubDate>Wed, 10 Dec 2008 10:17:08 GMT</pubDate></item><item><title><![CDATA[Reply to Dateien: lesen&#x2F;schreiben on Wed, 10 Dec 2008 10:37:54 GMT]]></title><description><![CDATA[<p>hi, das funktioniert auch wunderbar.</p>
<p>gibt es denn eine möglichkeit den Inhalt eines Vektors umzudrehen? Bzw ihn rückwärts auszugeben?</p>
<p>Weil dann könnte ich ja die Schleife bis 10 laufen lassen und somit nur die letzten 10 Einträge ausgeben!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1628101</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1628101</guid><dc:creator><![CDATA[skizZ]]></dc:creator><pubDate>Wed, 10 Dec 2008 10:37:54 GMT</pubDate></item><item><title><![CDATA[Reply to Dateien: lesen&#x2F;schreiben on Wed, 10 Dec 2008 11:03:12 GMT]]></title><description><![CDATA[<p>ja du kannst einen vector auch von hinten nach vorne durchgehen</p>
<p>Hab es mal gemacht für die letzten 10 zeilen</p>
<pre><code class="language-cpp">#include &lt;iostream&gt;
#include &lt;fstream&gt;
#include &lt;string&gt;
#include &lt;vector&gt;
using namespace std;

int main()
{
    string name=&quot;&quot;;
    ifstream datei(&quot;test.txt&quot;);
    vector&lt;string&gt; data_input;
    while(getline(datei, name))
    {
         data_input.push_back(name);
        cout &lt;&lt; name &lt;&lt; endl;
    }
    datei.close();
    // mit rbegin holst du dir den iterator auf den schluss ist wie ein normaler iterator
    // nur dass er von hinten nach vorne geht
    vector&lt;string&gt;::reverse_iterator start=data_input.rbegin();
    for(int i=9;i&gt;=0;i--)
    {
        cout &lt;&lt; *(start+i) &lt;&lt; endl;
    }
    return 0;
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1628119</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1628119</guid><dc:creator><![CDATA[blups0r]]></dc:creator><pubDate>Wed, 10 Dec 2008 11:03:12 GMT</pubDate></item><item><title><![CDATA[Reply to Dateien: lesen&#x2F;schreiben on Wed, 10 Dec 2008 15:11:44 GMT]]></title><description><![CDATA[<p>skizZ schrieb:</p>
<blockquote>
<p>gibt es denn eine möglichkeit den Inhalt eines Vektors umzudrehen? Bzw ihn rückwärts auszugeben?</p>
</blockquote>
<p>Umdrehen: STL-Algorithmus <code>std::reverse()</code> .<br />
Rückwärts iterieren: <code>reverse_iterator</code> .</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1628319</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1628319</guid><dc:creator><![CDATA[Nexus]]></dc:creator><pubDate>Wed, 10 Dec 2008 15:11:44 GMT</pubDate></item></channel></rss>