问题描述
我有如下所示的JSON对象
{
"a":"123","b":"testing"
}
在Java中,我正在使用JSONObject.names()
方法。
JSONArray keys = jsonObject.names();
结果变得像这样["a","b"]
;
类似的结果如何迅速得到?
谢谢。
解决方法
您可以使用 JSONSerialization
将JSON data
解析为Dictionary
类型的[String:Any]
,然后使用keys
来进行从中获取所有密钥字符串。
do {
if let dict = try JSONSerialization.jsonObject(with: data) as? [String:Any] {
print(dict.keys)
}
} catch {
print(error)
}
,
var results = [String:Array<DataModel>]
哪里
class DataModel {
var name: String?
}
并获取键和值,
for i in 0...(results.length-1){
// To print the results keys
print(results.keys[results.startIndex.advancedBy(i)])
// To get value from that key
let valueFromKeyCount = (results[results.keys[results.startIndex.advancedBy(i)]] as Array<DataModel>).count
for j in 0...(valueFromKeyCount-1) {
let dm = results[results.keys[results.startIndex.advancedBy(i)]][j] as DataModel
print(dm.name)
}
}
您的问题已在此处回答-How to fetch the key from JSON in Swift?