美文网首页
10. 用json格式保存配置档

10. 用json格式保存配置档

作者: Jingwei | 来源:发表于2014-04-15 23:42 被阅读77次

原因

原因很简单,比如一个人有很多收货地址,这时候从服务器接收到了地址列表,但服务器的数据格式是json,你想给列表做缓存,所以最直接的想法就是把json address list 保存到地址列表里面

解决

之前我们说过了怎么保存plist,朋友问了,这个没什么难度啊。直接把列表字符串放进去就是了!

但有些许的不同,服务器传过来的数据是

[manager POST:url parameters:parameters success:^( id responseObject) {}

注意是id类型,不是我们所要的字符串,我们怎么把这个类型转成json字符串呢?

强制转换? 可以是可以,你试试吧,不行再往下看。

这里我们利用jsonkit开源库

如:

2014-04-12 11:12:08.201 Incidentally[902:60b] obj: {
    message = "RECEIVEADDRESS_FIND_SUCCESS";
    object =     (
       {
            area = "\"\"";
            city = zabei;
            isdefault = "<null>";
            moblephone = 22222222222;
            province = shanghai;
            receiveaddid = "RECEIVEADDRESS:b8447f44e2434632925e6b2f68389b91";
            receiveaddress = Abcdefasdfjksdhjfk;
            receivename = sdfsdfsdfsdfsdf;
            reluserid = "USERINFO:7c9cf1dcf69f4765bcc45a84a16efbae";
            remarks = "<null>";
            telphone = "<null>";
        }

       {
            area = "\"\"";
            city = zabei;
            isdefault = "<null>";
            moblephone = 1111111111111;
            province = shanghai;
            receiveaddid = "RECEIVEADDRESS:b8447f44e2434632925e6b2f68389b91";
            receiveaddress = Abcdefasdfjksdhjfk;
            receivename = sdfsdfsdfsdfsdf;
            reluserid = "USERINFO:7c9cf1dcf69f4765bcc45a84a16efbae";
            remarks = "<null>";
            telphone = "<null>";
        }

    );
    type = success;
}

先把object读出来,然后利用jsonkit的序列化,再保存到配置档。

NSArray* s = [data objectForKey:@"object"]; // data是整个json对象
[[XXX sharedInstance] setKey:@"address" Value:[s JSONString]]; // xxx是你自己的类

那么相对应的读呢?

- (BOOL) getAddressFromConfig
{
    NSString* address = [[XXX sharedInstance] getKey:@"address"];
    NSArray* array = [address objectFromJSONString];
    if (array != nil)
    {
        for (NSDictionary* receiveaddress in array)
        {
                    // TODO
        }
        [_tableView reloadData];
        return YES;
    }
    return NO;
}

要说的话

这其实是一个错误的解决过程,没啥难度。。。

相关文章

  • 10. 用json格式保存配置档

    原因 原因很简单,比如一个人有很多收货地址,这时候从服务器接收到了地址列表,但服务器的数据格式是json,你想给列...

  • cocoaPods - 进阶篇

    以前的podspec文件都是ruby格式,而trunk为我们带来了更轻便的json格式,你后你可以用json来配置...

  • beego配置

    beego 目前支持 INI、XML、JSON、YAML 格式的配置文件解析,但是默认采用了 INI 格式解析,用...

  • Postmen接口配置文件

    一、Postmen配置信息如下,拷贝后保存成json后缀的文件格式 { "id": "d86379b4-d778-...

  • go 读取配置文件

    json 格式的配置文件读取 config.json 配置文件内容如下: 读取 json 配置文件代码如下:

  • JMeter基础系列(十) JMeter关联之JSON提取器Js

    10.1 JSON提取器 若响应数据格式为JSON,也可以用JSON提取器来提取需要关联的数据。 配置项 Appl...

  • JMeter关联之JSON提取器

    1、JSON提取器 若响应数据格式为JSON,也可以用JSON提取器来提取需要关联的数据。 ▲ 配置项 Apply...

  • --save-dev

    --save:将保存配置信息至package.json -dev:保存至package.json的devDepen...

  • 17.json、pickle、shelve模块

    一、json模块 1). json模块概述 json格式内容为字符串 json:前后端交互使用广泛的格式;配置文件...

  • VSCode Golang关闭自动代码格式化formatOnSa

    跟着百度改了很多东西,最后发现是go插件导致的,一保存就自动格式化代码。 最后改了setting.json的配置(...

网友评论

      本文标题:10. 用json格式保存配置档

      本文链接:https://www.haomeiwen.com/subject/mueltttx.html