小编ete*_*ter的帖子

NSDictionary序列化为NSString

我正在使用URLScheme,我需要将应用程序A中的序列化NSDictionary发送到我的应用程序B.

应用程序A中,我使用NSKeyedArchiver将我的NSDictionary序列化为NSData

    NSDictionary *myDictionary = [NSDictionary dictionaryWithObjectsAndKeys:@"This is value 1", @"key1", 
                                    @"value 2", @"key2",
                                    @"value3", @"key3", 
                                    @"", @"key4", 
                                    @"value5", @"key5", 
                                    @"value 6", @"key6", 
                                    nil];
NSMutableData *data = [[NSMutableData alloc] init];
    NSKeyedArchiver *archiver = [[NSKeyedArchiver alloc] initForWritingWithMutableData:data];
    [archiver encodeObject:myDictionary];
    [archiver finishEncoding];
    [archiver release];

    NSString *bytes = [[[NSString alloc] initWithData:data
                                             encoding:NSASCIIStringEncoding] autorelease];
Run Code Online (Sandbox Code Playgroud)

应用程序B中,我使用的是NSKeyedUnarchiver

NSData *data = [[NSString stringWithFormat:@"%@", val] dataUsingEncoding:NSASCIIStringEncoding];        
NSKeyedUnarchiver *unarchiver = [[NSKeyedUnarchiver alloc] initForReadingWithData:data];
NSDictionary *myDictionary = [[unarchiver decodeObject] retain];
[unarchiver finishDecoding];
[unarchiver release];
Run Code Online (Sandbox Code Playgroud)

我的序列化NSDictionary看起来像:

bplist00Ô01T$ …

serialization nsdictionary nsdata ios

0
推荐指数
1
解决办法
7617
查看次数

标签 统计

ios ×1

nsdata ×1

nsdictionary ×1

serialization ×1