ich den Wert von newDetails als string.When immer versuche ich den folgenden Code erhalte ich eine Ausnahme alskonnte nicht JSON erhalten von String
[__NSArrayI dataUsingEncoding:]: Unbekannter Selektor an Instanz gesendet.
Ich habe newDetail
als NSString
deklariert. Auch die Werte von newDetail
in diesem und dem folgenden Code sind gleich. Hier ist der Code:
newDetail = [response valueForKey:@"newDetail"];
//newDetail prints as {"number":1,"nid":"1","pId":"3","name":"","me":"","day":"1"}
NSError *error;
NSData* data = [newDetail dataUsingEncoding:NSUTF8StringEncoding];
NSDictionary* json = [NSJSONSerialization
JSONObjectWithData:data
options:kNilOptions
error:&error];
Aber wenn ich den Code unten versuchen, es läuft perfekt:
newDetail = @" {\"number\":1,\"nid\":\"1\",\"pId\":\"3\",\"name\":\"\",\"me\":\"\",\"day\":\"1\"}";
NSError *error;
NSData* data = [newDetail dataUsingEncoding:NSUTF8StringEncoding];
NSDictionary* json = [NSJSONSerialization
JSONObjectWithData:data
options:kNilOptions
error:&error];
Kann mir jemand sagen, warum ich eine Ausnahme bin immer?
Meine Vermutung wäre, dass der Wert für den Schlüssel „newDetail“ ist nicht eine Zeichenfolge, aber ein anderer Datentyp. Möglicherweise [NSNull null]. – Chris
Ich drucke den Wert von newDetail, es ist nicht null – apurv
Und Sie sind sicher, dass es als String und kein Wörterbuch zurückkommt? Die Zeile, die ausgedruckt wird, ist mehrdeutig. – Chris