Ich sende NSString
und UIImage
benutze Bluetooth. Ich beschloss, beide in einem zu speichernNSDictionary
und dann das Wörterbuch in zu konvertieren NSData
.
Meine Frage ist , wie konvertieren NSDictionary
zu NSData
und umgekehrt?
Ich sende NSString
und UIImage
benutze Bluetooth. Ich beschloss, beide in einem zu speichernNSDictionary
und dann das Wörterbuch in zu konvertieren NSData
.
Meine Frage ist , wie konvertieren NSDictionary
zu NSData
und umgekehrt?
NSDictionary -> NSData:
NSData *myData = [NSKeyedArchiver archivedDataWithRootObject:myDictionary];
NSData -> NSDictionary:
NSDictionary *myDictionary = (NSDictionary*) [NSKeyedUnarchiver unarchiveObjectWithData:myData];
NSDictionary -> NSData:
NSData -> NSDictionary
Sie können dies mit jeder Klasse tun, die der NSCoding entspricht.
Quelle
quelle
Verwenden Sie NSJSONSerialization:
Die neuesten Renditen
id
, daher ist es eine gute Idee, den zurückgegebenen Objekttyp nach dem Casting zu überprüfen (hier habe ich ihn in NSDictionary umgewandelt).quelle
In Swift 2 können Sie dies folgendermaßen tun:
In Swift 3 :
quelle
Any?
Typ. Es wurde jedoch ein Fehler beim Konvertieren vonNSDictionary
nach angezeigtNSData
. Also habe ich deinen Code ausprobiert. Es hat nicht funktioniert.NSDictionary von NSData
http://www.cocoanetics.com/2009/09/nsdictionary-from-nsdata/
NSDictionary zu NSData
Sie können dafür die NSPropertyListSerialization-Klasse verwenden. Schauen Sie sich die Methode an:
Gibt ein NSData-Objekt zurück, das eine bestimmte Eigenschaftsliste in einem angegebenen Format enthält.
quelle
Probieren Sie mal das hier an
quelle
response
nichtresponce
. Ich habe das für dich korrigiert.