AFN下载json文件

AFN下载文件 存到沙盒并读取json

直接上代码 

AFHTTPSessionManager *manage  = [AFHTTPSessionManager manager];

NSURLRequest *request = [NSURLRequest requestWithURL:[NSURL URLWithString:@"http://xxxxxxxxxx/json/data.json"]];

NSURLSessionDownloadTask *downloadTask = [manage downloadTaskWithRequest:request progress:nil destination:^NSURL * _Nonnull(NSURL * _Nonnull targetPath, NSURLResponse * _Nonnull response) {

           NSString *caches = [NSHomeDirectory() stringByAppendingPathComponent:[NSString stringWithFormat:@"Documents/"]];

          NSString *fullpath = [caches stringByAppendingPathComponent:response.suggestedFilename];

         NSURL *filePathUrl = [NSURL fileURLWithPath:fullpath];

         return filePathUrl;

} completionHandler:^(NSURLResponse * _Nonnull response, NSURL * _Nonnull filePath, NSError * _Nonnull error) {

        NSLog(@"文件下载完毕---%@",filePath);

       NSData *data = [NSData dataWithContentsOfFile:    [[NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) objectAtIndex:0] stringByAppendingPathComponent:@"type_all.json"]];

            id JsonObject=[NSJSONSerialization JSONObjectWithData:data

                                                          options:NSJSONReadingAllowFragments

                                                           error:nil];

//        NSStringEncoding gbkEncoding = 

// CFStringConvertEncodingToNSStringEncoding(kCFStringEncodingGB_18030_2000);

  //     NSString *pageSource = [[NSString alloc] initWithData:data encoding:gbkEncoding];

//       NSData *newData=[pageSource dataUsingEncoding:NSUTF8StringEncoding];

//        self.allTypeArr = [NSJSONSerialization JSONObjectWithData:newData  options:NSJSONReadingMutableContainers error:nil];

self.alltypeArr = JsonObject ;

        NSLog(@"===%@",self.alltypeArr);

}];

[downloadTask resume];

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 218.241.181.202 wxhl60 123456 192.168.10.253 wxhl66 wxhl6...
    CYC666阅读 5,299评论 0 6
  • 使用NSURLConnection实现下载 1. 小文件下载 第一种方式(NSData) 第二种方式(NSURLC...
    搁浅的青蛙阅读 5,937评论 3 10
  • iOS开发系列--网络开发 概览 大部分应用程序都或多或少会牵扯到网络开发,例如说新浪微博、微信等,这些应用本身可...
    lichengjin阅读 9,112评论 2 7
  • JSON数据解析: JSON的简单介绍:什么是JSONJSON以一种轻量级的数据格式,一般用来数据交互服务器返回给...
    木子尚武阅读 2,325评论 0 0
  • NSURLSession 使用步骤使用NSURLSession对象创建Task,然后执行Task -(void)g...
    BEYOND黄阅读 4,419评论 0 0