json - 快速创建 JSON

标签 json swift object

我需要像这样创建 JSON:

Order = {   type_id:'1',model_id:'1',

   transfer:{
     startDate:'10/04/2015 12:45',
     endDate:'10/04/2015 16:00',
     startPoint:'Ул. Момышулы, 45',
     endPoint:'Аэропорт Астаны'
   },
   hourly:{
     startDate:'10/04/2015',
     endDate:'11/04/2015',
     startPoint:'ЖД Вокзал',
     endPoint:'',
     undefined_time:'1'
   },
   custom:{
     startDate:'12/04/2015',
     endDate:'12/04/2015',
     startPoint:'Астана',
     endPoint:'Павлодар',
     customPrice:'50 000'
   },
    commentText:'',
    device_type:'ios'
};

问题是我无法创建有效的 JSON。 以下是我创建对象的方式:

let jsonObject: [AnyObject]  = [
        ["type_id": singleStructDataOfCar.typeID, "model_id": singleStructDataOfCar.modelID, "transfer": savedDataTransfer, "hourly": savedDataHourly, "custom": savedDataReis, "device_type":"ios"]
    ]

其中 savedData 是字典:

let savedData: NSDictionary = ["ServiceDataStartDate": singleStructdata.startofWork, 
"ServiceDataAddressOfReq": singleStructdata.addressOfRequest, 
"ServiceDataAddressOfDel": singleStructdata.addressOfDelivery, 
"ServiceDataDetailedText": singleStructdata.detailedText, "ServiceDataPrice": singleStructdata.priceProposed]

当我只使用字符串创建我的 JSON 对象时,一切正常。但是,当我包含字典 NSJSONSerialization.isValidJSONObject(value) 时,返回 false。如何创建有效的字典?

最佳答案

一个问题是这段代码不是Dictionary类型的。

let jsonObject: [Any]  = [
    [
         "type_id": singleStructDataOfCar.typeID,
         "model_id": singleStructDataOfCar.modelID, 
         "transfer": savedDataTransfer, 
         "hourly": savedDataHourly, 
         "custom": savedDataReis, 
         "device_type":"iOS"
    ]
]

上面是 AnyObjectArray,其中包含 [String: AnyObject] 类型的 Dictionary它。

尝试这样的方式来匹配您在上面提供的 JSON:

let savedData = ["Something": 1]

let jsonObject: [String: Any] = [ 
    "type_id": 1,
    "model_id": 1,
    "transfer": [
        "startDate": "10/04/2015 12:45",
        "endDate": "10/04/2015 16:00"
    ],
    "custom": savedData
]

let valid = JSONSerialization.isValidJSONObject(jsonObject) // true

关于json - 快速创建 JSON,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29512839/

相关文章:

javascript - react : Iterating through deeply nested objects and displaying them without tearing my hair out

javascript - 连接多级对象以进行过滤

JavaScript eval() JSON 问题

ios - 如何从选项卡栏 Controller 访问 subview Controller

javascript - 为什么内存中的 JavaScript 对象文字比 JSON 形式的文本文件大小大得多?

objective-c - 在 Objective-C 类中使用 SDCAlertView 时如何自定义它

generics - Swift 中构造泛型类型的扩展

php - 使用带有对象的 php session 还是访问数据库更好?

xml - Moxy:对象列表 XML 和 JSON 不能同时看起来不错

javascript - 在 Jquery 中使用列表框