<?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[console-Application: Datei laden &#x2F; speichern &#x2F; anlegen]]></title><description><![CDATA[<p>Hallo,</p>
<p>ich möchte gern innerhalb einer Visual C++ Consolen-Application eine Datei laden und speichern / sowie anlegen können. Welche Headerfiles und Code-Ausdrücke benötige ich dafür?</p>
<p>GJM</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/230360/console-application-datei-laden-speichern-anlegen</link><generator>RSS for Node</generator><lastBuildDate>Sun, 27 Sep 2026 12:56:30 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/230360.rss" rel="self" type="application/rss+xml"/><pubDate>Thu, 25 Dec 2008 10:32:07 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to console-Application: Datei laden &#x2F; speichern &#x2F; anlegen on Thu, 25 Dec 2008 10:32:07 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>ich möchte gern innerhalb einer Visual C++ Consolen-Application eine Datei laden und speichern / sowie anlegen können. Welche Headerfiles und Code-Ausdrücke benötige ich dafür?</p>
<p>GJM</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1635217</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1635217</guid><dc:creator><![CDATA[GJM]]></dc:creator><pubDate>Thu, 25 Dec 2008 10:32:07 GMT</pubDate></item><item><title><![CDATA[Reply to console-Application: Datei laden &#x2F; speichern &#x2F; anlegen on Thu, 25 Dec 2008 10:38:04 GMT]]></title><description><![CDATA[<p><a href="http://www.willemer.de/informatik/cpp/fileop.htm" rel="nofollow">http://www.willemer.de/informatik/cpp/fileop.htm</a><br />
Am Besten mit fstream's.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1635219</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1635219</guid><dc:creator><![CDATA[Kóyaánasqatsi]]></dc:creator><pubDate>Thu, 25 Dec 2008 10:38:04 GMT</pubDate></item><item><title><![CDATA[Reply to console-Application: Datei laden &#x2F; speichern &#x2F; anlegen on Thu, 25 Dec 2008 12:15:25 GMT]]></title><description><![CDATA[<p>way schrieb:</p>
<blockquote>
<p><a href="http://www.willemer.de/informatik/cpp/fileop.htm" rel="nofollow">http://www.willemer.de/informatik/cpp/fileop.htm</a><br />
Am Besten mit fstream's.</p>
</blockquote>
<p>danke hat mit einem einfachen text schon mal funktioniert. <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>aber wie kann ich ein Array ausgeben in eine Datei?</p>
<pre><code>unsigned short testFunction(unsigned char *ptr, unsigned short sizearray)
{
   unsigned short i=0; 
   fstream f;

   f.open(&quot;test.txt&quot;, ios::out);

   for(i=0; i&lt;sizearray; i++)
        f &lt;&lt; &amp;ptr[i] &lt;&lt; endl;

   f.close();

}
</code></pre>
<p>Und wie kann man sagen, dass z.B. jeweils nur 12 Werte vom Array nebeneinander in der Datei stehen sollen? Ist es auch möglich, jeden Dezimalwert vom Array in einen Hex-Wert umzuwandlen und als 0x12 z.B. auszugeben (wobei alle Werte mit einem Komma voneinander getrennt sein müssten)?</p>
<p>GJM</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1635234</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1635234</guid><dc:creator><![CDATA[GJM]]></dc:creator><pubDate>Thu, 25 Dec 2008 12:15:25 GMT</pubDate></item><item><title><![CDATA[Reply to console-Application: Datei laden &#x2F; speichern &#x2F; anlegen on Thu, 25 Dec 2008 13:44:20 GMT]]></title><description><![CDATA[<p>hab soweit alles zum Laufen gebracht - allerdings fehlt mir noch das Schlüsselwort, dass bei Hex-Zahlen immer zwei Zahlen dargestellt werden - also auch bei 0x00 (bis jetzt wird hier immer 0x0 angezeigt)</p>
<p>GJM</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1635255</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1635255</guid><dc:creator><![CDATA[GJM]]></dc:creator><pubDate>Thu, 25 Dec 2008 13:44:20 GMT</pubDate></item><item><title><![CDATA[Reply to console-Application: Datei laden &#x2F; speichern &#x2F; anlegen on Thu, 25 Dec 2008 13:46:52 GMT]]></title><description><![CDATA[<p>GJM schrieb:</p>
<blockquote>
<p>aber wie kann ich ein Array ausgeben in eine Datei?</p>
<pre><code class="language-cpp">&amp;ptr[i]
</code></pre>
</blockquote>
<p>Dieser Code gibt dir den Zeiger auf das Objekt i im Array. Nimm den Addressoperator vorne weg, dann geht es. Das sind aber C++ Grundlagen <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>Zudem, verwende bitte cpp Tags für C++ Code.</p>
<p>GJM schrieb:</p>
<blockquote>
<p>Und wie kann man sagen, dass z.B. jeweils nur 12 Werte vom Array nebeneinander in der Datei stehen sollen?</p>
</blockquote>
<p>Was meinst du damit? Immer nur 12 Werte in einer Zeile, oder wie?</p>
<p>GJM schrieb:</p>
<blockquote>
<p>Ist es auch möglich, jeden Dezimalwert vom Array in einen Hex-Wert umzuwandlen und als 0x12 z.B. auszugeben (wobei alle Werte mit einem Komma voneinander getrennt sein müssten)?</p>
</blockquote>
<p>Ja, das geht. Sichwort ist hier &quot;Manipulatoren&quot;.<br />
I/O Stream: <a href="http://www.cplusplus.com/reference/iostream/" rel="nofollow">http://www.cplusplus.com/reference/iostream/</a><br />
Manipulators: <a href="http://www.cplusplus.com/reference/iostream/manipulators/" rel="nofollow">http://www.cplusplus.com/reference/iostream/manipulators/</a><br />
Hex: <a href="http://www.cplusplus.com/reference/iostream/manipulators/hex.html" rel="nofollow">http://www.cplusplus.com/reference/iostream/manipulators/hex.html</a><br />
Showbase (für 0x): <a href="http://www.cplusplus.com/reference/iostream/manipulators/showbase.html" rel="nofollow">http://www.cplusplus.com/reference/iostream/manipulators/showbase.html</a></p>
<p>Die Kommatrennung kannst du ja selber einbauen, indem du nach jedem Wert noch ein <code>&quot;, &quot;</code> ausgeben lässt.<br />
Oder du verwendest die C++ Algorithmen und Iteratoren, ein Beispiel findest du hier:<br />
<a href="http://www.cplusplus.com/reference/std/iterator/ostream_iterator.html" rel="nofollow">http://www.cplusplus.com/reference/std/iterator/ostream_iterator.html</a></p>
<p>Für die Ausgabe als Hexadezimalzahl, musst du dann die Flags im Stream setzen und es nicht mehr über Manipulatoren machen. Hier findest du weitere Infos:<br />
<a href="http://www.cplusplus.com/reference/iostream/ios_base/flags.html" rel="nofollow">http://www.cplusplus.com/reference/iostream/ios_base/flags.html</a></p>
<p>Naja, ok, ich setze noch ein kleines Beispiel nach:</p>
<pre><code class="language-cpp">#include &lt;fstream&gt;
#include &lt;iterator&gt;
#include &lt;algorithm&gt;

void output_array(char const* filename, char const* array, std::size_t size)
{
  std::ofstream file(filename);

  file.setf(std::ofstream::hex);
  file.setf(std::ofstream::showbase);

  std::copy(array, array + size, std::ostream_iterator&lt;int&gt;(file, &quot;, &quot;));
  // Wir müssen die Zahlen als int ausgeben lassen,
  // da sonst Buchstaben rauskommen bei char.
}

int main()
{
  char array[] = { 10, 20, 30, 40, 50 };

  output_array(&quot;./test.txt&quot;, array, sizeof(array) / sizeof(char));

  return 0;
}
</code></pre>
<p>(Code ist ungetestet)</p>
<p>Falls du übrigens immer gleiche Weiten haben möchtest bei der Ausgabe, wäre vielleicht noch das hier interessant:<br />
<a href="http://www.cplusplus.com/reference/iostream/ios_base/width.html" rel="nofollow">http://www.cplusplus.com/reference/iostream/ios_base/width.html</a></p>
<p>Ich hoffe dies hilft dir weiter.</p>
<p>Im übrigen empfehle ich auf rohe C-Arrays und Zeiger zu verzichten. Nimm lieber die Container in C++.</p>
<p>Grüssli</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1635257</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1635257</guid><dc:creator><![CDATA[Dravere]]></dc:creator><pubDate>Thu, 25 Dec 2008 13:46:52 GMT</pubDate></item></channel></rss>