die Konvertierung eines NSString mit Sonderzeichen zu einem CString

Habe ich ein NSString mit einem Wert von Jose (Akzent auf dem e). Ich versuche, Sie zu konvertieren in einen C-string wie folgt:

char str [[myAccentStr length] + 1];
[myAccentStr getCString:str maxLength:[myAccentStr length] + 1 encoding:NSUTF32StringEncoding];

aber str endet als eine leere Zeichenfolge. Was gibt? Ich habe versucht, UTF8 und UTF16 zu. Es wird übergeben, um eine andere Funktion später auf und wenn, dass funcsion Anrufe lstrlen es auf die Größe kommt als null.

  • Während der Suche im apple-dev-Foren, fand ich etwas sagte mir, ich solle versuchen, mit den NSMacOSRomanStringEncoding. Ich habe versucht, und das ist näher, aber noch nicht ganz dort - bekomme ich die Zeichenfolge minus das Zeichen mit Akzenten(z.B. Jos anstelle von Jose).
  • Haben Sie versucht, mit [str UTF8String]? Das ist der häufigste Weg, die Menschen zu konvertieren eine NSString* auf ein CString.
  • Ich habe nicht versucht, aber stellt sich heraus, ich habe andere Probleme. Die Antwort unten hat mich die erste Hürde.
InformationsquelleAutor Ahmad | 2011-09-08
Schreibe einen Kommentar