<?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[Verlorene Daten bei einlesen von BitMaps]]></title><description><![CDATA[<p>Hallo,<br />
auch wenn es schon tausende Fragen zu diesem Thema gibt und ich mir auch alles was ich zu dem Thema bei google gefunden hab durchgelesen hab versteh ich das Problem noch nicht.</p>
<p>Ich habe versucht ein Bitmap Hexadezimal einzulesen und wieder auszugeben.<br />
Nur wenn ich mir das Ergebniss dann angucke mit einem Hex Editor und die eigentliche Datei fehlen Zahlen <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f615.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--confused_face"
      title=":confused:"
      alt="😕"
    /><br />
Hier ein Programm Beispiel was die ersten 256 Zeichen einliest und wieder ausgiebt.</p>
<pre><code class="language-cpp">#include&lt;fstream&gt;
#include&lt;iomanip.h&gt;

using namespace std;

int main(){
    //Datei öffnen und einstellen
    fstream filein;
    filein.open(&quot;NeuBitmap.bmp&quot;,ios::in |ios::binary );
    filein.setf(ios::hex, ios::basefield);

    //Daten aus Datei einlesen
    char buffer[256];
    filein&gt;&gt;buffer;

    //Datei zur Ausgab öffnen und einstelen 
    fstream fileout;
    fileout.open( &quot;test.btm&quot;,ios::out | ios::binary);
    fileout.setf(ios::hex, ios::basefield);

    // In Datei schreiben 
      for(int a =0;a&lt;256;a++){fileout&lt;&lt;buffer[a];}

    //Dateien schließen
    filein.close();
    fileout.close();
    return 0;
}
</code></pre>
<p>Hier derst die Original Zeilen aus dem Hexeditor :</p>
<pre><code>424D760B000000000000360000002800000027000000180000000100180000000000400B000000000000000000000000.....
</code></pre>
<p>Und dann die Ausgabe:</p>
<pre><code>424D760011F0C1B840063E0040063E0000E0030043003A0078013E006F006B0075006D0078013E000000000020007500.....
</code></pre>
<p>Liegt dass an den Flaschen Flags oder kann man dass überhaupt so machen?<br />
Kann man eiegntlich auch direkt die einzelnen Bits auslesen? Hab mal was von Boolalpha gehört aber keine konkrete Anwendung.<br />
Hoffe irgtjemand kann mir eklären warum man das nicht so machen kann und wie es richtig geht.</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/209333/verlorene-daten-bei-einlesen-von-bitmaps</link><generator>RSS for Node</generator><lastBuildDate>Mon, 12 Oct 2026 14:42:03 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/209333.rss" rel="self" type="application/rss+xml"/><pubDate>Sat, 29 Mar 2008 12:36:52 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Verlorene Daten bei einlesen von BitMaps on Sat, 29 Mar 2008 12:36:52 GMT]]></title><description><![CDATA[<p>Hallo,<br />
auch wenn es schon tausende Fragen zu diesem Thema gibt und ich mir auch alles was ich zu dem Thema bei google gefunden hab durchgelesen hab versteh ich das Problem noch nicht.</p>
<p>Ich habe versucht ein Bitmap Hexadezimal einzulesen und wieder auszugeben.<br />
Nur wenn ich mir das Ergebniss dann angucke mit einem Hex Editor und die eigentliche Datei fehlen Zahlen <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f615.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--confused_face"
      title=":confused:"
      alt="😕"
    /><br />
Hier ein Programm Beispiel was die ersten 256 Zeichen einliest und wieder ausgiebt.</p>
<pre><code class="language-cpp">#include&lt;fstream&gt;
#include&lt;iomanip.h&gt;

using namespace std;

int main(){
    //Datei öffnen und einstellen
    fstream filein;
    filein.open(&quot;NeuBitmap.bmp&quot;,ios::in |ios::binary );
    filein.setf(ios::hex, ios::basefield);

    //Daten aus Datei einlesen
    char buffer[256];
    filein&gt;&gt;buffer;

    //Datei zur Ausgab öffnen und einstelen 
    fstream fileout;
    fileout.open( &quot;test.btm&quot;,ios::out | ios::binary);
    fileout.setf(ios::hex, ios::basefield);

    // In Datei schreiben 
      for(int a =0;a&lt;256;a++){fileout&lt;&lt;buffer[a];}

    //Dateien schließen
    filein.close();
    fileout.close();
    return 0;
}
</code></pre>
<p>Hier derst die Original Zeilen aus dem Hexeditor :</p>
<pre><code>424D760B000000000000360000002800000027000000180000000100180000000000400B000000000000000000000000.....
</code></pre>
<p>Und dann die Ausgabe:</p>
<pre><code>424D760011F0C1B840063E0040063E0000E0030043003A0078013E006F006B0075006D0078013E000000000020007500.....
</code></pre>
<p>Liegt dass an den Flaschen Flags oder kann man dass überhaupt so machen?<br />
Kann man eiegntlich auch direkt die einzelnen Bits auslesen? Hab mal was von Boolalpha gehört aber keine konkrete Anwendung.<br />
Hoffe irgtjemand kann mir eklären warum man das nicht so machen kann und wie es richtig geht.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1482633</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1482633</guid><dc:creator><![CDATA[shorty0802]]></dc:creator><pubDate>Sat, 29 Mar 2008 12:36:52 GMT</pubDate></item><item><title><![CDATA[Reply to Verlorene Daten bei einlesen von BitMaps on Sat, 29 Mar 2008 12:39:24 GMT]]></title><description><![CDATA[<p>statt</p>
<pre><code class="language-cpp">filein&gt;&gt;buffer;
</code></pre>
<p>musst du</p>
<pre><code class="language-cpp">filein.read(buffer, sizeof(buffer));
</code></pre>
<p>schreiben</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1482634</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1482634</guid><dc:creator><![CDATA[.............]]></dc:creator><pubDate>Sat, 29 Mar 2008 12:39:24 GMT</pubDate></item><item><title><![CDATA[Reply to Verlorene Daten bei einlesen von BitMaps on Sat, 29 Mar 2008 12:59:31 GMT]]></title><description><![CDATA[<p>Stimmt!!!<br />
Aber warum ist das jetzt anderst als des davor ?<br />
Und des heißt des ist jetz wirklich so gespeichert dass ich in Buffer[0] Buffer[1]... Zahlen von 1-F hab ?<br />
Und warum kann ich eigentlich dass dann net so :</p>
<pre><code class="language-cpp">cout.setf(ios::hex, ios::basefield);
    cout&lt;&lt;buffer;
</code></pre>
<p>ausgeben wie ich des dann auch mit einem Hex Editor sehen kann ?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1482644</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1482644</guid><dc:creator><![CDATA[shorty0802]]></dc:creator><pubDate>Sat, 29 Mar 2008 12:59:31 GMT</pubDate></item><item><title><![CDATA[Reply to Verlorene Daten bei einlesen von BitMaps on Sat, 29 Mar 2008 13:03:30 GMT]]></title><description><![CDATA[<p>der operator&gt;&gt; liest nur bis zum nächsten whitespace</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1482649</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1482649</guid><dc:creator><![CDATA[&amp;gt;&amp;gt;]]></dc:creator><pubDate>Sat, 29 Mar 2008 13:03:30 GMT</pubDate></item><item><title><![CDATA[Reply to Verlorene Daten bei einlesen von BitMaps on Sat, 29 Mar 2008 13:49:23 GMT]]></title><description><![CDATA[<p>Ohh! Jetzt wird mir einiges klar. ^^</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1482671</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1482671</guid><dc:creator><![CDATA[shorty0802]]></dc:creator><pubDate>Sat, 29 Mar 2008 13:49:23 GMT</pubDate></item></channel></rss>