<?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[[gelöst] UNICODE in Datei schreiben]]></title><description><![CDATA[<p>Hallo zusammen.</p>
<p>Ich habe u.a. auch schon in diesem Forum nach Lösungen gesucht - und auch gefunden. Allerdings konnte ich nicht wirklich was damit angefangen.</p>
<p>Und zwar möchte ich UNICODE in eine Datei schreiben. Allerdings funktioniert das nicht wirklich. Setze ich einen Break-Point an der Stelle, an der in die Datei geschrieben wird, läuft scheinbar alles durch. Auch die Daten die geschrieben werden sollen, sind OK. In der Datei steht aber nur eine Zeile - der Rest ist nicht da.</p>
<p>Geschrieben habe ich</p>
<pre><code>typedef struct
{
  wchar_t objNummer[15];
  wchar_t name[50];
  wchar_t pfade[4][200];
}strctEintrag;

wfstream listFile;
strctEintrag objectMeta[100];

//Strukturarray mit Daten füllen
//...

for(i=0; i &lt; curStruct; i++)
  listFile.write((wchar_t*) &amp;objectMeta[i], sizeof(strctEintrag));

listFile.close();
</code></pre>
<p>Jemand eine Ahnung</p>
<p>Gruß<br />
Kai</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/335185/gelöst-unicode-in-datei-schreiben</link><generator>RSS for Node</generator><lastBuildDate>Fri, 24 Apr 2026 21:01:39 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/335185.rss" rel="self" type="application/rss+xml"/><pubDate>Wed, 04 Nov 2015 13:25:03 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to [gelöst] UNICODE in Datei schreiben on Fri, 06 Nov 2015 14:48:53 GMT]]></title><description><![CDATA[<p>Hallo zusammen.</p>
<p>Ich habe u.a. auch schon in diesem Forum nach Lösungen gesucht - und auch gefunden. Allerdings konnte ich nicht wirklich was damit angefangen.</p>
<p>Und zwar möchte ich UNICODE in eine Datei schreiben. Allerdings funktioniert das nicht wirklich. Setze ich einen Break-Point an der Stelle, an der in die Datei geschrieben wird, läuft scheinbar alles durch. Auch die Daten die geschrieben werden sollen, sind OK. In der Datei steht aber nur eine Zeile - der Rest ist nicht da.</p>
<p>Geschrieben habe ich</p>
<pre><code>typedef struct
{
  wchar_t objNummer[15];
  wchar_t name[50];
  wchar_t pfade[4][200];
}strctEintrag;

wfstream listFile;
strctEintrag objectMeta[100];

//Strukturarray mit Daten füllen
//...

for(i=0; i &lt; curStruct; i++)
  listFile.write((wchar_t*) &amp;objectMeta[i], sizeof(strctEintrag));

listFile.close();
</code></pre>
<p>Jemand eine Ahnung</p>
<p>Gruß<br />
Kai</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2474119</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2474119</guid><dc:creator><![CDATA[_Bongo]]></dc:creator><pubDate>Fri, 06 Nov 2015 14:48:53 GMT</pubDate></item><item><title><![CDATA[Reply to [gelöst] UNICODE in Datei schreiben on Wed, 04 Nov 2015 13:35:45 GMT]]></title><description><![CDATA[<p>Du schreibst nirgendwo Zeilen, warum sollten also welche drin sein?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2474123</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2474123</guid><dc:creator><![CDATA[manni66]]></dc:creator><pubDate>Wed, 04 Nov 2015 13:35:45 GMT</pubDate></item><item><title><![CDATA[Reply to [gelöst] UNICODE in Datei schreiben on Wed, 04 Nov 2015 13:47:09 GMT]]></title><description><![CDATA[<p>Ich gehe davon aus, dass ich damit</p>
<pre><code>for(i=0; i &lt; curStruct; i++)
  listFile.write((wchar_t*) &amp;objectMeta[i], sizeof(strctEintrag));
</code></pre>
<p>alle Daten reinschreibe. Wie ist es denn richtig?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2474127</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2474127</guid><dc:creator><![CDATA[_Bongo]]></dc:creator><pubDate>Wed, 04 Nov 2015 13:47:09 GMT</pubDate></item><item><title><![CDATA[Reply to [gelöst] UNICODE in Datei schreiben on Wed, 04 Nov 2015 14:00:07 GMT]]></title><description><![CDATA[<p>Du schreibst curStruct mal sizeof(strctEintrag) Bytes. Da sind keine Zeilen. Wie es &quot;richtig&quot; ist hängt davon ab, was du eigentlich willst.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2474131</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2474131</guid><dc:creator><![CDATA[manni66]]></dc:creator><pubDate>Wed, 04 Nov 2015 14:00:07 GMT</pubDate></item><item><title><![CDATA[Reply to [gelöst] UNICODE in Datei schreiben on Wed, 04 Nov 2015 14:15:45 GMT]]></title><description><![CDATA[<p>Ich will die Daten aus dem Struktur-Array in die Datei schreiben und diese später wieder in ein Struktur-Array auslesen.</p>
<p><strong>curStruct</strong> ist nur die Anzahl der Arrayelemente. Ich gehe gerade davon aus, dass ich mit dem ersten Parameter an <strong>write</strong> den Startpunkt angebe und mit dem zweiten sage ich halt wie viel er schreiben soll. <strong>strctEintrag</strong> ist ja der Datentyp, also verstehe ich das so, dass ich von Position <strong>objectMeta[i], sizeof(strctEintrag)</strong> Bytes schreibe.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2474138</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2474138</guid><dc:creator><![CDATA[_Bongo]]></dc:creator><pubDate>Wed, 04 Nov 2015 14:15:45 GMT</pubDate></item><item><title><![CDATA[Reply to [gelöst] UNICODE in Datei schreiben on Wed, 04 Nov 2015 14:42:05 GMT]]></title><description><![CDATA[<p>Ja. Und weiter?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2474143</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2474143</guid><dc:creator><![CDATA[manni66]]></dc:creator><pubDate>Wed, 04 Nov 2015 14:42:05 GMT</pubDate></item><item><title><![CDATA[Reply to [gelöst] UNICODE in Datei schreiben on Wed, 04 Nov 2015 14:58:34 GMT]]></title><description><![CDATA[<p>Ich habe diese Struktur. Von dieser Struktur habe ich ein Array mit 100 Elementen angelegt. Jedes dieser Element wird jetzt beschrieben. Danach will ich das gesamte Array in eine Datei schreiben (habe auch schon versucht das einfach nur das ganze Array anzugeben -&gt; listFile.write((wchar_t*) &amp;objectMeta, sizeof(objectMeta)); Hat aber auch nicht funktioniert.</p>
<p>Meine Frage: Wie schreibe ich das gesamte, zuvor gefüllte Array, als UNICODE-Stream in eine Datei und wie schreibe ich diese Daten ebenso wieder in ein solches Array zurück?</p>
<p>Als Nicht-UNICODE-Variante geht das ja, aber als UNICODE nicht.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2474146</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2474146</guid><dc:creator><![CDATA[_Bongo]]></dc:creator><pubDate>Wed, 04 Nov 2015 14:58:34 GMT</pubDate></item><item><title><![CDATA[Reply to [gelöst] UNICODE in Datei schreiben on Wed, 04 Nov 2015 15:10:32 GMT]]></title><description><![CDATA[<p>_Bongo schrieb:</p>
<blockquote>
<p>Hat aber auch nicht funktioniert.</p>
</blockquote>
<p>Aha. Weil keine Zeilen da sind. Dass es keine geben kann hatten wir aber schon geklärt.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2474151</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2474151</guid><dc:creator><![CDATA[manni66]]></dc:creator><pubDate>Wed, 04 Nov 2015 15:10:32 GMT</pubDate></item><item><title><![CDATA[Reply to [gelöst] UNICODE in Datei schreiben on Wed, 04 Nov 2015 15:15:07 GMT]]></title><description><![CDATA[<p>Nimm std::fstream, bzw. std::ofstream.</p>
<p>Ich vermute, dass das Problem darin liegt, dass sizeof(wchar_t) != 1 ist.</p>
<p>Wenn Du sizeof(mystruct) machst, bekommst Du die Anzahl der Bytes, die die Struct belegt. Schreibst Du auf ein wstream mit write, erwartet write die anzahl der wchar_t-Zeichen, die aber nicht der Anzahl der Bytes in der struct entsprechen.</p>
<p>Das könnte gehen:</p>
<pre><code>listFile.write(reinterpret_cast&lt;wchar_t*&gt;(&amp;objectMeta[i]), sizeof(strctEintrag)/sizeof(wchar_t));
</code></pre>
<p>Dass ich den Cast geändert habe, liegt einfach daran, dass ich es nicht übers Herz bringe, diesen C-Style-Cast zu veröffentlichen. Das reinterpret_cast macht es deutlicher, wie kaputt das eigentlich ist.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2474153</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2474153</guid><dc:creator><![CDATA[tntnet]]></dc:creator><pubDate>Wed, 04 Nov 2015 15:15:07 GMT</pubDate></item><item><title><![CDATA[Reply to [gelöst] UNICODE in Datei schreiben on Wed, 04 Nov 2015 15:19:01 GMT]]></title><description><![CDATA[<p>Aber das Array ist voll beschrieben und in der Nicht-UNICODE-Varianten schreibt das Programm alles in die Datei und holt es auch wieder raus. Stelle ich <strong>fstream</strong> dann aber auf <strong>wfstream</strong> um, geht es nicht mehr. Das dürfte aber doch mit einem <strong>fstream</strong>-Objekt ebenso wenig klappen, wenn keine Zeilen da sind. Warum sind in der einfachen Varianten Zeilen vorhanden und in der UNICODE-Varianten plötzlich nicht mehr?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2474155</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2474155</guid><dc:creator><![CDATA[_Bongo]]></dc:creator><pubDate>Wed, 04 Nov 2015 15:19:01 GMT</pubDate></item><item><title><![CDATA[Reply to [gelöst] UNICODE in Datei schreiben on Wed, 04 Nov 2015 15:30:20 GMT]]></title><description><![CDATA[<p>Das mit dem /sizeof(wchar_t) will auch nicht funktionieren.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2474160</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2474160</guid><dc:creator><![CDATA[_Bongo]]></dc:creator><pubDate>Wed, 04 Nov 2015 15:30:20 GMT</pubDate></item><item><title><![CDATA[Reply to [gelöst] UNICODE in Datei schreiben on Wed, 04 Nov 2015 16:01:53 GMT]]></title><description><![CDATA[<p>wchar_t hat mit UNICODE nur indirekt zu tun!<br />
Schau dir die erzeugte Datei mal mit einem Hexeditor an, dann verstehst du vllt. wie ein wchar_t aufgebaut ist (Stichwort: UCS, s.a. <a href="https://en.wikipedia.org/wiki/Wide_character" rel="nofollow">Wide character</a>)...</p>
<p>Edit: ich nehme mal an, daß du UTF-8 Dateien erzeugen willst (welche dann auch mit einem Texteditor lesbar sind) - dafür benötigst du dann aber eine UTF-8 Implementierung (unter Windows einfach <a href="https://msdn.microsoft.com/en-us/library/windows/desktop/dd374130%28v=vs.85%29.aspx" rel="nofollow">WideCharToMultiByte</a>).</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2474161</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2474161</guid><dc:creator><![CDATA[Th69]]></dc:creator><pubDate>Wed, 04 Nov 2015 16:01:53 GMT</pubDate></item><item><title><![CDATA[Reply to [gelöst] UNICODE in Datei schreiben on Wed, 04 Nov 2015 15:37:25 GMT]]></title><description><![CDATA[<p>Auszug aus winnt.h<br />
<strong>typedef wchar_t WCHAR; // wc, 16-bit UNICODE character</strong></p>
<p>Was stimmt nicht an dieser Zeile, wenn wchar_t nix mit UNICODE zu tun hat? Es ist die Darstellung von Zeichen mittels 2 Bytes.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2474163</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2474163</guid><dc:creator><![CDATA[_Bongo]]></dc:creator><pubDate>Wed, 04 Nov 2015 15:37:25 GMT</pubDate></item><item><title><![CDATA[Reply to [gelöst] UNICODE in Datei schreiben on Wed, 04 Nov 2015 15:48:32 GMT]]></title><description><![CDATA[<p>Was genau verstehst du denn unter Zeilen (denn bisher schreibst du ja die ganzen Strukturdaten binär dort rein, inklusive Nullterminierung etc.)?</p>
<p>PS: Habe gerade meinen oberen Beitrag noch editiert.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2474167</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2474167</guid><dc:creator><![CDATA[Th69]]></dc:creator><pubDate>Wed, 04 Nov 2015 15:48:32 GMT</pubDate></item><item><title><![CDATA[Reply to [gelöst] UNICODE in Datei schreiben on Wed, 04 Nov 2015 15:57:02 GMT]]></title><description><![CDATA[<p>Von Zeilen hat manni66 gesprochen.</p>
<p>Ich arbeite die ganze Zeit mit UNICODE-Werten und will einfach nur diese Daten in jede Struktur meines Struktur-Arrays schreiben (was ja auch funzt), und diese dann anschließend in eine Datei speichern.<br />
Anschließend wieder aus der Datei in ein solches Array von eben solchen Strukturen zurückschreiben.</p>
<p>Die sollen nicht im Texteditor lesbar sein. Ich will diese Daten aus der Datei in das Struktur-Array schreiben, und Teile dieser Daten aus jeder Struktur in ein ListBox-Steuerelement eintragen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2474171</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2474171</guid><dc:creator><![CDATA[_Bongo]]></dc:creator><pubDate>Wed, 04 Nov 2015 15:57:02 GMT</pubDate></item><item><title><![CDATA[Reply to [gelöst] UNICODE in Datei schreiben on Wed, 04 Nov 2015 16:02:43 GMT]]></title><description><![CDATA[<p>Du hast gleich im ersten Beitrag geschrieben:</p>
<p>_Bongo schrieb:</p>
<blockquote>
<p>In der Datei steht aber nur eine Zeile - der Rest ist nicht da.</p>
</blockquote>
<p>Wie hast du denn überprüft, ob dort mehr drin steht?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2474174</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2474174</guid><dc:creator><![CDATA[Th69]]></dc:creator><pubDate>Wed, 04 Nov 2015 16:02:43 GMT</pubDate></item><item><title><![CDATA[Reply to [gelöst] UNICODE in Datei schreiben on Wed, 04 Nov 2015 16:05:17 GMT]]></title><description><![CDATA[<p>Ich ging von einer Zeile aus, weil ich scheinbar alle Strukturen in die Datei geschrieben hatte, aber beim Öffnen der Datei nur eine einzige Zeile sah. Ich hatte das testweise in eine TXT-Datei geschrieben, aber nur, weil ich das in Binärdateien so schlecht ermitteln konnte.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2474177</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2474177</guid><dc:creator><![CDATA[_Bongo]]></dc:creator><pubDate>Wed, 04 Nov 2015 16:05:17 GMT</pubDate></item><item><title><![CDATA[Reply to [gelöst] UNICODE in Datei schreiben on Wed, 04 Nov 2015 16:06:45 GMT]]></title><description><![CDATA[<p>_Bongo schrieb:</p>
<blockquote>
<p>Was stimmt nicht an dieser Zeile, wenn wchar_t nix mit UNICODE zu tun hat? Es ist die Darstellung von Zeichen mittels 2 Bytes.</p>
</blockquote>
<p>Hast du das hier schon gelesen?<br />
<a href="http://www.joelonsoftware.com/articles/Unicode.html" rel="nofollow">http://www.joelonsoftware.com/articles/Unicode.html</a></p>
]]></description><link>https://www.c-plusplus.net/forum/post/2474178</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2474178</guid><dc:creator><![CDATA[nman]]></dc:creator><pubDate>Wed, 04 Nov 2015 16:06:45 GMT</pubDate></item><item><title><![CDATA[Reply to [gelöst] UNICODE in Datei schreiben on Wed, 04 Nov 2015 16:18:01 GMT]]></title><description><![CDATA[<p>Kann ich mir bei Zeiten mal durchlesen, aber ist mit Sicherheit nicht so kompliziert, nicht so umständlich, die funktionierende Variante mit <strong>fstream</strong> durch die <strong>wfstream</strong>-Variante zu ersetzen - oder?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2474182</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2474182</guid><dc:creator><![CDATA[_Bongo]]></dc:creator><pubDate>Wed, 04 Nov 2015 16:18:01 GMT</pubDate></item><item><title><![CDATA[Reply to [gelöst] UNICODE in Datei schreiben on Wed, 04 Nov 2015 16:19:01 GMT]]></title><description><![CDATA[<p>_Bongo schrieb:</p>
<blockquote>
<p>Von Zeilen hat manni66 gesprochen.</p>
</blockquote>
<p>Nein, du in deinem ersten Post.</p>
<p>_Bongo schrieb:</p>
<blockquote>
<p>In der Datei steht aber nur eine Zeile - der Rest ist nicht da.</p>
</blockquote>
]]></description><link>https://www.c-plusplus.net/forum/post/2474183</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2474183</guid><dc:creator><![CDATA[manni66]]></dc:creator><pubDate>Wed, 04 Nov 2015 16:19:01 GMT</pubDate></item><item><title><![CDATA[Reply to [gelöst] UNICODE in Datei schreiben on Wed, 04 Nov 2015 16:56:09 GMT]]></title><description><![CDATA[<p>_Bongo schrieb:</p>
<blockquote>
<p>Kann ich mir bei Zeiten mal durchlesen, aber ist mit Sicherheit nicht so kompliziert, nicht so umständlich, die funktionierende Variante mit <strong>fstream</strong> durch die <strong>wfstream</strong>-Variante zu ersetzen - oder?</p>
</blockquote>
<p>Vermutlich nicht, ich kenne die entsprechenden APIs nicht.</p>
<p>Aber: Du willst nicht &quot;UNICODE&quot; schreiben, sondern Text in einem bestimmten Character Encoding. Das könnte UTF-16 bzw. UCS-2 sein, oder UTF-8, oder sonstwas. Deine winnt.h-Referenz legt nahe, dass du UTF-16 meinen könntest (habe nicht viel Ahnung von Windows), aber du solltest vmtl. nochmal nachlesen, was genau du möchtest.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2474191</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2474191</guid><dc:creator><![CDATA[nman]]></dc:creator><pubDate>Wed, 04 Nov 2015 16:56:09 GMT</pubDate></item><item><title><![CDATA[Reply to [gelöst] UNICODE in Datei schreiben on Thu, 05 Nov 2015 08:35:10 GMT]]></title><description><![CDATA[<p>Das hier (was funktioniert):</p>
<pre><code>struct _eintrag
{
	long	nummer;
	wchar_t name[30];
	wchar_t testarray[4][150];
}eintrag[2];

int main()
{
	fstream	ausgabedatei;
	bool	schalter=false;

	if(schalter)
	{
		ausgabedatei.open(&quot;U:\\structTest.dat&quot;, ios::out | ios::binary);

		eintrag[0].nummer=5146000;
		wcscpy_s(eintrag[0].name, L&quot;Tabelle 1&quot;);
		wcscpy_s(eintrag[0].testarray[0], L&quot;Pfadangabe zu Version 602 (1)&quot;);
		wcscpy_s(eintrag[0].testarray[1], L&quot;Pfadangabe zu Version 700 (1)&quot;);
		wcscpy_s(eintrag[0].testarray[2], L&quot;Pfadangabe zu Version 710 (1)&quot;);
		wcscpy_s(eintrag[0].testarray[3], L&quot;Pfadangabe zu Version 800 (1)&quot;);

		eintrag[1].nummer=5146001;
		wcscpy_s(eintrag[1].name, L&quot;Tabelle 2&quot;);
		wcscpy_s(eintrag[1].testarray[0], L&quot;Pfadangabe zu Version 602 (2)&quot;);
		wcscpy_s(eintrag[1].testarray[1], L&quot;Pfadangabe zu Version 700 (2)&quot;);
		wcscpy_s(eintrag[1].testarray[2], L&quot;Pfadangabe zu Version 710 (2)&quot;);
		wcscpy_s(eintrag[1].testarray[3], L&quot;Pfadangabe zu Version 800 (2)&quot;);

		for(int i=0; i &lt; 2; i++)
			ausgabedatei.write((char*) &amp;eintrag[i], sizeof(eintrag[0]));
	}
	else
	{
		ausgabedatei.open(&quot;U:\\structTest.dat&quot;, ios::in);
		ausgabedatei.read((char*) &amp;eintrag, sizeof(eintrag[0]));

		for(int i=0; i &lt; 2; i++)
		{
			 cout &lt;&lt; &quot;Nummer: &quot; &lt;&lt; eintrag[i].nummer &lt;&lt; endl;
			wcout &lt;&lt; &quot;Name: &quot; &lt;&lt; eintrag[i].name &lt;&lt; endl;
			 cout &lt;&lt; &quot;Pfade: &quot; &lt;&lt; endl;
			for(int j=0; j &lt; 4; j++)
				wcout &lt;&lt; eintrag[i].testarray[j] &lt;&lt; endl;

			cout &lt;&lt; endl;
		}
	}

	ausgabedatei.close();
	cin.get();
	return 0;
}
</code></pre>
<p>soll so geschrieben werden (wfstream statt fstream):</p>
<pre><code>#include &lt;iostream&gt;
#include &lt;fstream&gt;

using namespace std;

struct _eintrag
{
	long	nummer;
	wchar_t name[30];
	wchar_t testarray[4][150];
}eintrag[2];

int main()
{
	wfstream	ausgabedatei;
	bool		schalter=false;

	if(schalter)
	{
		ausgabedatei.open(&quot;U:\\structTest.dat&quot;, ios::out | ios::binary);

		eintrag[0].nummer=5146000;
		wcscpy_s(eintrag[0].name, L&quot;Tabelle 1&quot;);
		wcscpy_s(eintrag[0].testarray[0], L&quot;Pfadangabe zu Version 602 (1)&quot;);
		wcscpy_s(eintrag[0].testarray[1], L&quot;Pfadangabe zu Version 700 (1)&quot;);
		wcscpy_s(eintrag[0].testarray[2], L&quot;Pfadangabe zu Version 710 (1)&quot;);
		wcscpy_s(eintrag[0].testarray[3], L&quot;Pfadangabe zu Version 800 (1)&quot;);

		eintrag[1].nummer=5146001;
		wcscpy_s(eintrag[1].name, L&quot;Tabelle 2&quot;);
		wcscpy_s(eintrag[1].testarray[0], L&quot;Pfadangabe zu Version 602 (2)&quot;);
		wcscpy_s(eintrag[1].testarray[1], L&quot;Pfadangabe zu Version 700 (2)&quot;);
		wcscpy_s(eintrag[1].testarray[2], L&quot;Pfadangabe zu Version 710 (2)&quot;);
		wcscpy_s(eintrag[1].testarray[3], L&quot;Pfadangabe zu Version 800 (2)&quot;);

		for(int i=0; i &lt; 2; i++)
			ausgabedatei.write(reinterpret_cast&lt;wchar_t*&gt;(&amp;eintrag[i]), sizeof(eintrag[0]));
	}
	else
	{
		ausgabedatei.open(&quot;U:\\structTest.dat&quot;, ios::in);
		ausgabedatei.read(reinterpret_cast&lt;wchar_t*&gt;(&amp;eintrag[0]), sizeof(eintrag[0]));

		for(int i=0; i &lt; 2; i++)
		{
			 cout &lt;&lt; &quot;Nummer: &quot; &lt;&lt; eintrag[i].nummer &lt;&lt; endl;
			wcout &lt;&lt; &quot;Name: &quot; &lt;&lt; eintrag[i].name &lt;&lt; endl;
			 cout &lt;&lt; &quot;Pfade: &quot; &lt;&lt; endl;
			for(int j=0; j &lt; 4; j++)
				wcout &lt;&lt; eintrag[i].testarray[j] &lt;&lt; endl;

			cout &lt;&lt; endl;
		}
	}

	ausgabedatei.close();
	cin.get();
	return 0;
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/2474250</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2474250</guid><dc:creator><![CDATA[_Bongo]]></dc:creator><pubDate>Thu, 05 Nov 2015 08:35:10 GMT</pubDate></item><item><title><![CDATA[Reply to [gelöst] UNICODE in Datei schreiben on Thu, 05 Nov 2015 09:44:39 GMT]]></title><description><![CDATA[<p>Die Frage ist, warum willst Du das mit wfstream machen? Du schreibst doch keine Textdatei mit UCS-2 Daten, sondern eine Binärdatei mit Datenblöcken. Dafür ist fstream sogar besser, da hier die Zeichengröße 1 ist und du damit direkt sizeof verwenden kannst.</p>
<p>Wenn Du das mit wfstream machst, so es denn funktioniert, würde die Datei exakt den gleichen Inhalt haben.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2474257</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2474257</guid><dc:creator><![CDATA[LordJaxom]]></dc:creator><pubDate>Thu, 05 Nov 2015 09:44:39 GMT</pubDate></item><item><title><![CDATA[Reply to [gelöst] UNICODE in Datei schreiben on Fri, 06 Nov 2015 14:48:16 GMT]]></title><description><![CDATA[<p>Ich habe sämtliche Zeilen in widechar vorliegen (Pfadangaben, Daten, ...). Von daher dachte ich, sei es sauberer, wenn ich die widechar-Daten via widechar-Filestream in eine Datei schiebe.</p>
<p>Aber wenn das mit fstream ja sogar besser ist, dann belasse ich das beim fstream - funktioniert ja schließlich.</p>
<p>Ich danke euch allen</p>
<p>Gruß<br />
Kai</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2474443</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2474443</guid><dc:creator><![CDATA[_Bongo]]></dc:creator><pubDate>Fri, 06 Nov 2015 14:48:16 GMT</pubDate></item></channel></rss>