美文网首页
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