wxString to const char* (unter UNICODE)
-
Normalerweise geht das ja mit c_str(), ToAscii() oder mb_str(), aber nur beim ANSI Build. Der Unicode Build gibt dort anstelle von const char* ein const wxChar* oder wxCharBuffer zurück.
-
Wie kann man beim Unicode Build wxString nach const char* konvertieren?
-
Bracht man den Unicode Build überhaupt, wenn man die GUI nur in englischer und evtl. noch deutscher Sprache baut? Bin grad am überlegen einen ANSI-Build zu erstellen, weil mich die Konvertierungen so nerven.
-
-
Dafür müsstest du imho eine Konvertierungsfunktion benutzen.
http://wxwidgets.org/manuals/stable/wx_wxstring.html#wxstringUnd für deutsch/englisch braucht es nicht unbedingt Unicode, allerdings wird ab wxWidgets3.0 es nur noch unicode geben.
-
phlox81 schrieb:
Dafür müsstest du imho eine Konvertierungsfunktion benutzen.
Ja, die habe ich ja probiert (siehe oben), aber die geben bei nem Unicode Build eben kein const char* zurück.
phlox81 schrieb:
...allerdings wird ab wxWidgets3.0 es nur noch unicode geben.
Ja? Dann gewöhne ich mich wohl lieber schon mal dran.
-
http://wxwidgets.org/manuals/stable/wx_wxstring.html#wxstringcharstr
^evtl. ist dies die richtige Methode.
Sonst musst du mal googlen, sollte ja nicht allzu schwer sein.
-
Danke, aber die Funktion gibt wxWritableCharBuffer zurück. Und wie ich aus dem wxWritableCharBuffer den const char* raus ziehe kann ich in der Doc nicht sehen, denn der Link http://wxwidgets.org/manuals/stable/wx_wxstringbuffer.html#wxWritableCharBuffer leitet nach wxStringBuffer um und dort sehe ich nichts brauchbares.
Habe auch schon gegoogelt, aber man die meisten verweisen eben wieder auf c_str() usw.. Anscheinend arbeiten die alle mit nem Ansi-Build?
-
Returns an object with string data that is implicitly convertible to char* pointer
Es sollte also direkt konvertierbar sein.
-
Ah, danke. Der static_cast<const char*> hat bei char_str() geklappt im Gegensatz zu c_str().