• NSJSONSerialization


    /*

          总结:   json格式的读写:

     

            解析:

             data =   NSData  dataWithContentsOfUrl:XXX

             

             id obj  =  [ NSJsonSerialization NSJSONObjectWithData:data XXXX];

           

            生成json格式的文件

             array dict

             NSData* data  = [NSJSONSerialization dataWithJSONObject:array/dict XXXX];

            data writeToFile:PATH;

            或者

            data writeToURL:(NSURL*)url;

    */

    #define urlString @"http://localhost/files/test.json"

     

    #define cpuString @"http://localhost/files/cpu.json"

     

    void parseJsonData(void)

    {

        //将特殊字符编码,例如 中文

    //    urlString stringByAddingPercentEscapesUsingEncoding:<#(NSStringEncoding)#>

        //将一些被编码的字符串解码成特殊字符中

    //    urlString stringByReplacingPercentEscapesUsingEncoding:<#(NSStringEncoding)#>

        

        //url字符串编码,即去除特殊字符串,若是没有特殊字符,可以不必

        NSString* validUrlString = [urlString stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];

        

        NSURL * url = [NSURL URLWithString:validUrlString ];

        

        NSData* data = [ NSData dataWithContentsOfURL:url ];

        NSString *contents = [[ NSString alloc]initWithData:data encoding:NSUTF8StringEncoding];

        NSLog(@"contents:%@",contents);

        

        

        NSError* error=nil;

        

        NSArray* array = [NSJSONSerialization JSONObjectWithData:data options:NSJSONReadingMutableContainers error:&error];

    }

    //********************************************

    #define PATH @"/Users/wenhua/Desktop/write.json"

     

    //把内存中的数据构造成json格式的字节流

    void makeJsonData(void)

    {

        NSMutableArray *array = [[ NSMutableArray alloc]init];

        

        [array addObject:@"abc"];

        [array addObject:[NSNumber numberWithInt:123]];

        [array addObject:[NSNumber numberWithBool:YES]];

        [array addObject:[NSNumber numberWithFloat:3.14159]];

        [array addObject:[NSNull null]];

        

        //创建一个字典

        NSDictionary* dict=@{@"k1":@"v1",@"k2":@"v2"};

        [array addObject:dict];

        

        NSArray* arr = @[@"one",@"two",@"three" ];

        [array addObject:arr];

     

        NSError* error=nil;

        

        NSData* data = [NSJSONSerialization dataWithJSONObject:array options:NSJSONWritingPrettyPrinted error:&error];

        if (error) {

            NSLog(@"%@",error);

            return;

        }

        [data writeToFile:PATH  atomically:YES];

    }

  • 相关阅读:
    InnoDB 事务
    InnoDB 索引
    MySQL 8 事务管理、数据库维护、改善性能
    MySQL 7 存储过程、游标、触发器
    MySQL 6 插入数据(INSERT INTOVALUESSELECT FROM)、更新和删除数据(UPDATE SET WHEREDELETE)、创建和操纵表、视图
    MySQL 5 联结表、创建高级联结、组合查询、全文本搜索
    MySQL 4 数据处理函数、汇总数据、分组数据、子查询
    MySQL 3 通配符、正则、计算字段
    MySQL 2 SQL数据使用(检索、排序、过滤:SELECT/FROM/LIMIT/ORDER BY/DESC/WHERE/AND/OR/IN/NOT)
    JavaScript相关-深入理解函数2
  • 原文地址:https://www.cnblogs.com/hyuganatsu/p/NSJSONSerialization.html
Copyright © 2020-2023  润新知