Parse.com json 数组转换为数组swift

标签: json Swift
发布时间: 2017/3/4 23:32:07
注意事项: 本文中文内容可能为机器翻译,如要查看英文原文请点击上面连接.

有人可以帮我了。我保存到具有类型数组列进 Parse.com 我的数据 (示例: ["11:30","12:45,"13:02"],只是一些有时作为字符串的列表)。我会试着去与此数据 swift :

var take: NSMutableArray!

var query = PFQuery(className: "test")
query.getObjectInBackgroundWithId("QZ6Y8Oljc5"){
   (testData: PFObject!, error: NSError!) -> Void in
      if (error == nil){
         take = testData["workday"]
         println(take)    
       }
       else{
         println(error)
        }
}

问题是,我得到只有 json 数组类型︰

(
   "11:30",
   "12:45,
   "13:02"
)

怎么可以我转换成 NSArray 所以它可以像︰

var myArray =  ["11:30","12:45,"13:02"]

谢谢你任何建议,因为我试过每个方法,我发现在这里,但没有任何结果。

解决方法 1:

JSON 数据的问题是它是自己的数组,其中包含要筛选和培养。通常人最终会使用巨大的嵌套的 IF 语句结束就看上去乱糟糟的。幸运的是,人创建一个代码,通过 JSON 数据进行筛选和给你一个大规模的开关表,运用回可用类型 (Int、 数组、 字符串)。

https://github.com/SwiftyJSON/SwiftyJSON

看,它应该帮助。一旦你拥有它执行您可以通过输入呼叫。

let json = JSON(Data : JSONData)

然后通过筛选,您可以使用子字符串。(根据数据,你它与匹配字符串或 int)

let firstIndex = json["workday"]

//Int
let firstIndexOfWorkDay = json["workday"][0]

//String
let firstIndexOfWorkDay = json["workday"]["time"]

等等......然而,你将需要将其强制转换,一旦你单挑的数据

let firstIndexOfWorkDay = json["workday"][0].valueOfFloat

//printing it would give 11:30

虽然就个人而言,我使用".description"。有时当我筛选通过所有的数组,从它是混合类型。

let firstIndexOfWorkDay = json["workday"][0].description

println(firstIndexOfWorkDay)

//would literally give "11:30" including the quotation marks

然后我使用 string 方法修剪报价,然后将其转换为任何我需要的类型。但它是对你的创造力一旦你弄清楚它是如何工作

赞助商