美文网首页
iOS NSObject和NSString互转

iOS NSObject和NSString互转

作者: 我唔知啊 | 来源:发表于2017-02-22 22:35 被阅读1094次

场景:希望把对象存储到本地数据库,但数据库只支持字符串类型的数据。

NSObject转NSString:
// response是NSObject
// 归档(NSObject) 转成 NSData
NSMutableData *data = [NSMutableData data];
NSKeyedArchiver *archiver = [[NSKeyedArchiver alloc] initForWritingWithMutableData:data];
archiver.outputFormat = NSPropertyListXMLFormat_v1_0;
// @"root"不能改
[archiver encodeObject:response forKey:@"root"];
[archiver finishEncoding];
// NSData 转成 NSString
NSString *responseStr = [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding];
NSString转NSOject:
 // NSString 转成 NSData
NSData *data = [responseStr dataUsingEncoding:NSUTF8StringEncoding];
// 解档(NSData) 转成 NSOject
FMNetworkResponse *response = [NSKeyedUnarchiver unarchiveObjectWithData:data];

希望对你有帮助。

相关文章

网友评论

      本文标题:iOS NSObject和NSString互转

      本文链接:https://www.haomeiwen.com/subject/rdcvwttx.html