<?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[boost::filesystem::path korrekt mit unicode arbeiten]]></title><description><![CDATA[<p>Hi Ho,</p>
<p>Ich benutzt boost::filesystem::path für pfad/verzeichnis handling.</p>
<p>Nun ist es so das ich intern alles als Utf8 halte,<br />
und auch immer in utf8 konvertiere.<br />
Wenn ich jetzt aber fs::path eine zeichenkette übergebe,<br />
erwartet es eine Kodierung, die das OS benutzt.<br />
Auf windows also utf16, was einem wchar_t entspricht.</p>
<p>TestCase:</p>
<pre><code class="language-cpp">QString filename;
fs::path mypath = filename.toUtf8().constData();
fs::ofstream out (mypath);
out &lt;&lt; &quot;this is a test&quot;;
out.close();
</code></pre>
<p>Ich möchte aber nun verhinden das ich überall<br />
#ifdef WIN benutze und immer zu Utf16 konvertiere,<br />
ansonsten utf8 benutze.</p>
<p>Gibt es eine Möglichkeit fs::path(und alle anderes fs funktionen) so einzustellen, dass immer ein utf8-String erwartet wird, und intern dann in die OS spezifische kodierung umgewandelt wird.</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/292849/boost-filesystem-path-korrekt-mit-unicode-arbeiten</link><generator>RSS for Node</generator><lastBuildDate>Sun, 16 Aug 2026 15:41:12 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/292849.rss" rel="self" type="application/rss+xml"/><pubDate>Mon, 19 Sep 2011 10:07:26 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to boost::filesystem::path korrekt mit unicode arbeiten on Mon, 19 Sep 2011 10:07:26 GMT]]></title><description><![CDATA[<p>Hi Ho,</p>
<p>Ich benutzt boost::filesystem::path für pfad/verzeichnis handling.</p>
<p>Nun ist es so das ich intern alles als Utf8 halte,<br />
und auch immer in utf8 konvertiere.<br />
Wenn ich jetzt aber fs::path eine zeichenkette übergebe,<br />
erwartet es eine Kodierung, die das OS benutzt.<br />
Auf windows also utf16, was einem wchar_t entspricht.</p>
<p>TestCase:</p>
<pre><code class="language-cpp">QString filename;
fs::path mypath = filename.toUtf8().constData();
fs::ofstream out (mypath);
out &lt;&lt; &quot;this is a test&quot;;
out.close();
</code></pre>
<p>Ich möchte aber nun verhinden das ich überall<br />
#ifdef WIN benutze und immer zu Utf16 konvertiere,<br />
ansonsten utf8 benutze.</p>
<p>Gibt es eine Möglichkeit fs::path(und alle anderes fs funktionen) so einzustellen, dass immer ein utf8-String erwartet wird, und intern dann in die OS spezifische kodierung umgewandelt wird.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2121185</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2121185</guid><dc:creator><![CDATA[Nash26]]></dc:creator><pubDate>Mon, 19 Sep 2011 10:07:26 GMT</pubDate></item></channel></rss>