<?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[&#x5C;0 als Stringende ignorieren]]></title><description><![CDATA[<p>Guten Abend,</p>
<p>ich suche gerade eine möglichkeit Bilddaten im C++-Code abzuspeichern, um Bilder, die möglicherweise gelöscht wurden, automatisch wiederherstellen zu können. Ich habe auch die Möglichkeit gefunden, die Bilder in einem Binäreditor zu öffnen und die Hex-Codes zu exportieren.</p>
<p>Dadurch ergibt sich eine Zeichenkette die in etwa so aussieht:<br />
&quot;\x089\x050\x04E\x047\x00D\x00A\x01A\x00A\x000\x000\x000\x00D\x049\x048\x044...<br />
Wenn man diese Zeichenkette abspeichert, klappt das Speichern des Bildes (theoretisch). Das Klappt auch, wenn ich das in einen neuen Hex-Editor kopiere und als &quot;icon.png&quot; abspeichere.<br />
Praktisch sieht C++ \x000 als Stringende und bricht die Zeichenkette dort ab.<br />
Somit ist meine Bilddatei fehlerhaft und kann nicht verwendet werden.</p>
<p>Jetzt ist meine Frage, ob ich \0 als String-Ende ignorieren kann und beinhart &quot;drüberzufahren&quot;. Da bei &quot;\x000\x000\x000&quot; 3 Byte mit dem Wert 0 geschrieben werden müssen.</p>
<p>Ich hoffe, jemand hat eine Idee<br />
Mit freundlichen Grüßen<br />
Last Dodo</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/255703/0-als-stringende-ignorieren</link><generator>RSS for Node</generator><lastBuildDate>Fri, 11 Sep 2026 19:58:50 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/255703.rss" rel="self" type="application/rss+xml"/><pubDate>Thu, 03 Dec 2009 21:36:37 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to &#x5C;0 als Stringende ignorieren on Thu, 03 Dec 2009 21:36:37 GMT]]></title><description><![CDATA[<p>Guten Abend,</p>
<p>ich suche gerade eine möglichkeit Bilddaten im C++-Code abzuspeichern, um Bilder, die möglicherweise gelöscht wurden, automatisch wiederherstellen zu können. Ich habe auch die Möglichkeit gefunden, die Bilder in einem Binäreditor zu öffnen und die Hex-Codes zu exportieren.</p>
<p>Dadurch ergibt sich eine Zeichenkette die in etwa so aussieht:<br />
&quot;\x089\x050\x04E\x047\x00D\x00A\x01A\x00A\x000\x000\x000\x00D\x049\x048\x044...<br />
Wenn man diese Zeichenkette abspeichert, klappt das Speichern des Bildes (theoretisch). Das Klappt auch, wenn ich das in einen neuen Hex-Editor kopiere und als &quot;icon.png&quot; abspeichere.<br />
Praktisch sieht C++ \x000 als Stringende und bricht die Zeichenkette dort ab.<br />
Somit ist meine Bilddatei fehlerhaft und kann nicht verwendet werden.</p>
<p>Jetzt ist meine Frage, ob ich \0 als String-Ende ignorieren kann und beinhart &quot;drüberzufahren&quot;. Da bei &quot;\x000\x000\x000&quot; 3 Byte mit dem Wert 0 geschrieben werden müssen.</p>
<p>Ich hoffe, jemand hat eine Idee<br />
Mit freundlichen Grüßen<br />
Last Dodo</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1817424</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1817424</guid><dc:creator><![CDATA[Last Dodo]]></dc:creator><pubDate>Thu, 03 Dec 2009 21:36:37 GMT</pubDate></item><item><title><![CDATA[Reply to &#x5C;0 als Stringende ignorieren on Thu, 03 Dec 2009 21:42:18 GMT]]></title><description><![CDATA[<p>Kommt drauf an, wie du die Daten speicherst..</p>
<p>Speichere sie nicht als C-String ab und alles ist gut. <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>Ansonsten zeig mal ein wenig Code.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1817429</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1817429</guid><dc:creator><![CDATA[drakon]]></dc:creator><pubDate>Thu, 03 Dec 2009 21:42:18 GMT</pubDate></item><item><title><![CDATA[Reply to &#x5C;0 als Stringende ignorieren on Thu, 03 Dec 2009 23:32:35 GMT]]></title><description><![CDATA[<p>Hat sich schon erledigt, danke.<br />
Ich hatte es erst als std::string<br />
jetzt hab ichs als C-String und gib dem write-Befehl einfach die zu schreibende Länge mit.</p>
<p>Hier mein Code.<br />
Kann getestet werden <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="😉"
    /><br />
Er erstellt einfach ein kleines PNG-Bild im Ausführungsordner.</p>
<pre><code class="language-cpp">#include &lt;fstream&gt;

using namespace std;

int main(int argc, char* argv[])
{
	const char image[] = &quot;SOMEBINARYCODE&quot;;
	ofstream file(&quot;a.png&quot;, ios_base::binary);
	file.write(image, sizeof(image));
	return 0;
}
</code></pre>
<p>//Edit: Bild daten entfernt</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1817452</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1817452</guid><dc:creator><![CDATA[Last Dodo]]></dc:creator><pubDate>Thu, 03 Dec 2009 23:32:35 GMT</pubDate></item></channel></rss>