Konvertieren von char* nach wxString
-
Hallo,
ich habe schon viel gesucht und gelesen, wie das Konvertiert werden könnte, aber ich bekomme es nicht hin (Habe ein Unicode Projekt).char* t = "Hello \0"; wxString s; s.FromAscii(t); wxMessageBox(s);
Wenn ich es so mache ist die Messagebox leer.
wxCSConv conv_ascii(_T("ISO-8859-1")); wxString str(conv_ascii.cMB2WX(t)); str.wc_str(conv_ascii);
So steht in der Messagebox "Hello" drin passt also. Aber kann man das nur über den Konstruktor machen, oder gibts dan auch ne Funktion z.B.
wxCSConv conv_ascii(_T("ISO-8859-1")); wxWCharBuffer b = conv_ascii.cMB2WX(t); str.????(b) //mit welcher funktion geht das??
Danke schon im voraus für alle Tipps.
Gruß Dscho
-
dscho schrieb:
ich habe schon viel gesucht und gelesen, wie das Konvertiert werden könnte, aber ich bekomme es nicht hin (Habe ein Unicode Projekt).
Meinst du so
wxString s; s = _T("Hallo");
Allerdings solltest du deinen Code dann in Unicode schreiben.
Jens
-
char *ch="Hallo"; wxString str = wxString::FromAscii(ch);
-
Danke für die Antworten so geht es. Aber wo ist der Unterschied???
char* t = "Hello \0"; wxString s; s.FromAscii(t); wxMessageBox(s); //Messagebox ist leer :confused: s = wxString::FromAscii(t) wxMessageBox(s); //in der Messagebox steht Hello :open_mouth:
Gruß Dscho
-
s = wxString::FromAscii(t)
methode FromAscii(t) wird ohne eine instanz der klasse wxString genutzt.
deshalb auch "static" definiert.