您的位置:首页 > Web前端 > JavaScript

NSData,NSImage,NSDictionary,NSString,NSURL 等等互相转换

2015-10-26 14:48 507 查看
一:NSString和NSURL 转换

//NSString->NSURL
NSString *urlString=[@"http://www.baidu.com" stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
NSURL *url=[NSURL URLWithString:urlString];
//NSURL->NSString
NSString *urlString=[[url absoluteString] stringByReplacingPercentEscapesUsingEncoding:NSUTF8StringE

二:NSString和NSData转换

//NSData-> NSString
NSString *testString = [[NSString alloc] initWithData:testData encoding:NSUTF8StringEncoding];
//NSString->NSData
NSString *aString = @"str to data<span style="font-family: 'Comic Sans MS';">";  </span>
NSData *testData = [testString dataUsingEncoding: NSUTF8StringEncoding];


三:NSData和NSImage转换

//NSData->UIImage
UIImage *testImage = [UIImage imageWithData: imageData];
//UIImage->NSData
NSData *imageData = UIImagePNGRepresentation(testImage)
//或者
NSData *imageData = UIImageJPEGRepresentation(testImage,1.0)

四:NSData和NSDictionary转换

//NSData-->NSDictionary
NSDictionary *testDict = [NSJSONSerialization JSONObjectWithData:testData options:NSJSONReadingMutableContainers error:nil]
//或者
NSKeyedUnarchiver *unarchiver = [[NSKeyedUnarchiver alloc] initForReadingWithData:testData];
NSDictionary *myDictionary = [[unarchiver decodeObjectForKey:@"Some Key Value"] retain];
[unarchiver finishDecoding];
//NSDictionay --> NSData
NSMutableData *data = [[NSMutableData alloc] init];
NSKeyedArchiver *archiver = [[NSKeyedArchiver alloc] initForWritingWithMutableData:data];
[archiver encodeObject:params forKey:@"Some Key Value"];
[archiver finishEncoding];

五:NSDictionary和JSON转换
//NSDictionary -> JSON: //这个方法是SBJson类库里的,需要导入SBJson.h
NSString *jsonStr=[dict JSONRepresentation];
//建议(特别是http取回来的jsonStr转换如下)
//JSON->NSDictionary:
NSData *jsonData = [testJsonStr dataUsingEncoding:NSUTF8StringEncoding];
NSDictionary *dict = [NSJSONSerialization JSONObjectWithData:jsonData options:NSJSONReadingMutableContainers error:nil]
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  NSDictionary JSON NSData