苹果开发 笔记(79)NSData

NSData是一序列字节,用到地方还是挺多。今天整理一下。

NSURLConnection 请求回来返回的字节。可能是JSON,XML,也有可能是其他格式。

一些应用场景


    NSString *jsonPath  =@"http://www.weather.com.cn/adat/sk/101010100.html";
    NSURLRequest *resuest  = [NSURLRequest requestWithURL:[NSURL URLWithString:jsonPath]];   
    [NSURLConnection sendAsynchronousRequest:resuest queue:[NSOperationQueue mainQueue] completionHandler:^(NSURLResponse *response, NSData *data, NSError *connectionError)
    {

        NSError *error = nil;
        NSDictionary *dic = [NSJSONSerialization JSONObjectWithData:data options:NSJSONReadingMutableContainers error:&error];
        NSDictionary *weatherDic =  [dic objectForKey:@"weatherinfo"];
        NSLog(@"JSON 城市 %@",[weatherDic objectForKey:@"city"]);
        NSLog(@"JSON 城市ID %@",[weatherDic objectForKey:@"cityid"]);
        NSLog(@"JSON 温度 %@",[weatherDic objectForKey:@"temp"]);

    }];

又如 NSData 获取URL 返回的数据


  NSData *jsonData = [NSData dataWithContentsOfURL:[NSURL URLWithString:jsonPath]];
  NSDictionary *dic = [NSJSONSerialization JSONObjectWithData:jsonData options:NSJSONReadingMutableContainers error:&error];
  NSDictionary *weatherDic =  [dic objectForKey:@"weatherinfo"];

文件操作

  NSFileManager *manager = [NSFileManager defaultManager];

    NSString *path  = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) lastObject];
   path =  [path stringByAppendingPathComponent:@"p.txt"];
   NSData *filedata = [manager contentsAtPath:path];
    if (filedata == nil)
     {
        NSLog(@"文件读取失败");
    }

NSString 读取字符串使用

- (instancetype)initWithData:(NSData *)data encoding:(NSStringEncoding)encoding;

你可能感兴趣的:(苹果开发 笔记(79)NSData)