我有本字典:
var schedule : [String:[(Bool,Bool)]]!//[Day:[(AMenabled:PMenabled)]]我想把它解码成一个json文件,把它放到服务器上。
调度对象如下所示:
["Sat":[ (true,true),
(false,true),
(false,false),
(false,true),
(false,false),
(false,true),
(false,false),
(false,true),
(false,false),
(false,true),
(false,false),
(true,true)
],
"Sun":[ (true,true),
(false,true),
(true,true),
(false,true),
(true,true),
(false,true),
(true,true),
(false,true),
(true,true),
(false,true),
(true,true),
(false,true)
],
"Mon":[ (true,true),
(false,true),
(false,false),
(false,true),
(false,false),
(false,true),
(false,false),
(false,true),
(false,false),
(false,true),
(true,false),
(true,true)
],
"Tue":[ (true,true),
(false,true),
(false,false),
(false,false),
(false,true),
(false,false),
(false,true),
(false,false),
(false,true),
(false,false),
(false,true),
(false,true)
],
"Wed":[ (true,true),
(false,false),
(false,true),
(false,false),
(false,true),
(false,false),
(false,true),
(false,false),
(false,true),
(false,true),
(true,true),
(true,true)
],
"Thur":[ (true,true),
(false,true),
(true,true),
(false,false),
(false,true),
(false,false),
(false,true),
(false,false),
(false,true),
(false,false),
(false,true),
(false,false)
],
"Fri":[ (true,true),
(false,false),
(false,true),
(false,false),
(false,true),
(false,false),
(false,true),
(false,false),
(false,true),
(false,true),
(true,true),
(true,false)
]
]我想解码成这样的JSON文件:
{
"parental_control": {
"user_id": 57,
"profile": 1,
"chat": false,
"forum_read": false,
"forum_write": false,
"days": [
[
true,
true,
true,
true,
true,
true,
true,
true,
true,
true,
true,
true,
true,
true,
true,
true,
true,
true,
true,
true,
true,
true,
true,
true
],
[
true,
true,
true,
true,
true,
true,
true,
true,
true,
true,
true,
true,
true,
true,
true,
true,
true,
true,
true,
true,
true,
true,
true,
true
],
[
true,
true,
true,
true,
true,
true,
true,
true,
true,
true,
true,
true,
true,
true,
true,
true,
true,
true,
true,
true,
true,
true,
true,
true
],
[
true,
true,
true,
true,
true,
true,
true,
true,
true,
true,
true,
true,
true,
true,
true,
true,
true,
true,
true,
true,
true,
true,
true,
true
],
[
true,
true,
true,
true,
true,
true,
true,
true,
true,
true,
true,
true,
true,
true,
true,
true,
true,
true,
true,
true,
true,
true,
true,
true
],
[
true,
false,
true,
true,
true,
true,
true,
true,
true,
true,
true,
true,
true,
true,
true,
true,
true,
true,
true,
true,
true,
true,
false,
true
],
[
true,
false,
true,
true,
true,
true,
true,
true,
true,
true,
true,
true,
true,
true,
true,
true,
true,
true,
true,
true,
true,
true,
false,
true
]
]
}
}因此,在不需要处理json文件中的父控件和其他键的情况下,如何实现到json文件的映射:
我试过什么?
我试过使用内置的NSJSONSerialization
var json = NSJSONSerialization.dataWithJSONObject(self.schedule, options: NSJSONWritingOptions.PrettyPrinted,error: nil)但是我发现了一个错误:
无法使用类型的参数列表调用dataWithJSONObject ([String:(Bool,Bool)]!,选项:NSJSONWritingOptions,error:nil)‘
发布于 2015-08-05 07:55:28
我重写了您的示例,它使用Array而不是元组。因为NSJSONSerialization不能处理元组,因为JSON中没有这样的东西。
var days = ["Mon", [true, false]]
let json = NSJSONSerialization.dataWithJSONObject(days, options: NSJSONWritingOptions.PrettyPrinted, error: nil)
let _days = NSJSONSerialization.JSONObjectWithData(json!, options: NSJSONReadingOptions.allZeros, error: nil) as! Array<AnyObject>
println(_days[0]) // prints Mon
println(_days[1][0]) // prints 1https://stackoverflow.com/questions/31826251
复制相似问题