konvertieren NSString zu NSData - [NSString dataUsingEncoding] Ausnahme
War ich konvertieren NSString, NSData, um das Parsen von JSON, aber ich bekam die folgende Fehlermeldung.
Terminating app due to uncaught exception 'NSInvalidArgumentException',
reason: '- [__NSCFDictionary dataUsingEncoding:]:
unrecognized selector sent to instance 0x7987d60'
Den code wie folgenden:
NSData *data = [str dataUsingEncoding:NSASCIIStringEncoding];
//NSUTF8StringEncoding also failed.
NSDictionary *dict = [NSJSONSerialization JSONObjectWithData:data options:kNilOptions error:&error];
Meiner Meinung nach, ist dies, weil str enthält neue-Zeile-Zeichen:'\n'.
Bin ich richtig?
Wäre bitte jemand mir helfen, dieses problem zu lösen?
Können Sie mir sagen, Ihren Text sowie
Ich checkte in meinem code, seine arbeiten gut mit Beispiel-Zeichenfolge, die enthält "\n".
Ich checkte in meinem code, seine arbeiten gut mit Beispiel-Zeichenfolge, die enthält "\n".
InformationsquelleAutor Egor T | 2012-04-01
Du musst angemeldet sein, um einen Kommentar abzugeben.
Deine Fehler sagt, dass Sie versuchen, zu senden
dataUsingEncoding:allowLossyConversion:
zu einer Instanz vonNSDictionary
, die nicht wissen, was zu tun mit diesen Selektor. Stellen Sie sicher, dass Ihrestr
Objekt ist tatsächlich ein string ist...Passiert den besten von uns 🙂
Wie haben Sie es lösen können. Kannst du bitte erwähnen. Vielen Dank.
Sie einfach ned zum ändern Ihrer dictionary-Objekt in string - NSString* json = [NSString stringWithFormat:@"%@", responseObject]; und diese Ihre wird keine Ausnahme sein
InformationsquelleAutor jmstone617
Versuchen Sie es mit
NSUnicodeStringEncoding
stattNSASCIIStringEncoding
. So ersetzen Sie die Zeile:mit dabei:
InformationsquelleAutor Fernando Cervantes
Ich habe gerade überprüft mit meinem Beispiel-Zeichenfolge. **Wenn Sie könnte gegeben haben Sie mir Ihren string, dann könnte ich ausgecheckt haben, mit meinem folgenden Beispiel-code.
Für mich Der Wert kommt 0 und mir sagen, "wo"
ist
falsch
InformationsquelleAutor Praveen-K