<?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[Umlaute in std::string (von SOAP Webservice)]]></title><description><![CDATA[<p>Hallo,</p>
<p>ich weiß, dass Umlaute im Typ std::string eigentlich funktionieren und in einem Test auch keinerlei Probleme darstellen.</p>
<p>Nutze ich aber den SOAP Webdienst von openligadb, bekomme ich ein Result-Set, welches unter anderem den Team-Namen der Heim-Mannschaft beinhaltet (vom Typ std::string*).</p>
<p>Leider bekomme ich dann statt der Umlaute nur Fragezeichen in der Konsole zu sehen und in meinem wxWidget Control (wxDataViewListCtrl) wird das Feld garnicht erst befüllt...</p>
<p>Hier mal mein Code:</p>
<pre><code class="language-cpp">listCtrl = new wxDataViewListCtrl( this, -1 );

wxVector&lt;wxVariant&gt; data;

for ( int i = 0; i &lt; matchdata.size(); i++ )
{
  data.push_back( wxVariant( matchdata[ i ]-&gt;nameTeam1 ) );
  data.push_back( wxVariant( matchdata[ i ]-&gt;nameTeam2 ) );
  listCtrl-&gt;AppendItem( data );
  data.clear();
}
</code></pre>
<p>Wenn ich nun statt</p>
<pre><code class="language-cpp">data.push_back( wxVariant( matchdata[ i ]-&gt;nameTeam1 ) );
</code></pre>
<p>folgendes probiere:</p>
<pre><code class="language-cpp">data.push_back( wxVariant( wxString( matchdata[ i ]-&gt;nameTeam1, wxConvUTF8 ) ) );
</code></pre>
<p>funktioniert es leider auch nicht.</p>
<p>Mache ich aber:</p>
<pre><code class="language-cpp">data.push_back( wxVariant( wxString( &quot;äöüÄÖÜß&quot;, wxConvUTF8 ) ) );
</code></pre>
<p>Bekomme ich das Feld wunderbar befüllt.<br />
Das Problem ist nun, ich habe durch den SOAP Webdienst keinen Einfluss auf die Daten, die mir matchdata[ i ] zurück gibt...</p>
<p>Besteht da noch irgendeine Möglichkeit, die Felder zu befüllen bzw. die Umlaute richtig darstellen zu lassen?</p>
<p>Gruß<br />
Danny.</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/289047/umlaute-in-std-string-von-soap-webservice</link><generator>RSS for Node</generator><lastBuildDate>Wed, 19 Aug 2026 16:12:15 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/289047.rss" rel="self" type="application/rss+xml"/><pubDate>Mon, 27 Jun 2011 15:44:43 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Umlaute in std::string (von SOAP Webservice) on Mon, 27 Jun 2011 15:44:43 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>ich weiß, dass Umlaute im Typ std::string eigentlich funktionieren und in einem Test auch keinerlei Probleme darstellen.</p>
<p>Nutze ich aber den SOAP Webdienst von openligadb, bekomme ich ein Result-Set, welches unter anderem den Team-Namen der Heim-Mannschaft beinhaltet (vom Typ std::string*).</p>
<p>Leider bekomme ich dann statt der Umlaute nur Fragezeichen in der Konsole zu sehen und in meinem wxWidget Control (wxDataViewListCtrl) wird das Feld garnicht erst befüllt...</p>
<p>Hier mal mein Code:</p>
<pre><code class="language-cpp">listCtrl = new wxDataViewListCtrl( this, -1 );

wxVector&lt;wxVariant&gt; data;

for ( int i = 0; i &lt; matchdata.size(); i++ )
{
  data.push_back( wxVariant( matchdata[ i ]-&gt;nameTeam1 ) );
  data.push_back( wxVariant( matchdata[ i ]-&gt;nameTeam2 ) );
  listCtrl-&gt;AppendItem( data );
  data.clear();
}
</code></pre>
<p>Wenn ich nun statt</p>
<pre><code class="language-cpp">data.push_back( wxVariant( matchdata[ i ]-&gt;nameTeam1 ) );
</code></pre>
<p>folgendes probiere:</p>
<pre><code class="language-cpp">data.push_back( wxVariant( wxString( matchdata[ i ]-&gt;nameTeam1, wxConvUTF8 ) ) );
</code></pre>
<p>funktioniert es leider auch nicht.</p>
<p>Mache ich aber:</p>
<pre><code class="language-cpp">data.push_back( wxVariant( wxString( &quot;äöüÄÖÜß&quot;, wxConvUTF8 ) ) );
</code></pre>
<p>Bekomme ich das Feld wunderbar befüllt.<br />
Das Problem ist nun, ich habe durch den SOAP Webdienst keinen Einfluss auf die Daten, die mir matchdata[ i ] zurück gibt...</p>
<p>Besteht da noch irgendeine Möglichkeit, die Felder zu befüllen bzw. die Umlaute richtig darstellen zu lassen?</p>
<p>Gruß<br />
Danny.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2084896</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2084896</guid><dc:creator><![CDATA[WasserDragoon]]></dc:creator><pubDate>Mon, 27 Jun 2011 15:44:43 GMT</pubDate></item><item><title><![CDATA[Reply to Umlaute in std::string (von SOAP Webservice) on Mon, 27 Jun 2011 16:18:17 GMT]]></title><description><![CDATA[<p>Ein</p>
<pre><code class="language-cpp">wxString::From8BitData( matchdata[ i ]-&gt;nameTeam1-&gt;c_str() )
</code></pre>
<p>hat das Problem gelöst...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2084932</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2084932</guid><dc:creator><![CDATA[WasserDragoon]]></dc:creator><pubDate>Mon, 27 Jun 2011 16:18:17 GMT</pubDate></item></channel></rss>