0
スウィフト3.0 iOSの10.xのSwiftyJSON... SwiftyJSON配列
に、私はこのようになります辞書オブジェクトのSwiftyJSON配列を持つ
[
{
"figure" : 1326,
"account" : "Charles"
}
{
"figure" : 2361,
"account" : "James"
}
]
を辞書レコードを削除する私はレコードを削除したいですそれは "James"に属していて、私はこのコードを思いついた。 jsonObjectsには、上記の配列が含まれています。
var json2S = sharedDataAccess.jsonObjects
for json2DX in 0..<json2S.count {
var delIndex: Int? = nil
for (jsonK, subJson) in sharedDataAccess.jsonObjects[json2DX] {
print("json2D \(jsonK) \(subJson.stringValue) \(Name)")
if jsonK == "account" && subJson.stringValue != Name {
delIndex = json2DX
print("DELETE IT \(jsonK) \(subJson.stringValue) \(Name)")
}
}
if delIndex != nil {
json2S[0].arrayObject?.remove(at: delIndex!)
print("DELETING IT \(delIndex) \(Name)")
}
}
sharedDataAccess.jsonObjects = JSON(json2S)
これは機能しますが、私が望んだ方法ではありません。それはJamesを削除します(名前変数にはJamesが含まれていると仮定しますが)。
[
null,
{
"figure" : 1326,
"account" : "Charles"
}
]
ジェームズはnullに置き換えられます...私は嫌いですが、どのように私はエントリを削除することはできますか?nullを取得するか、実際にはnullを削除することもできます!
基本的にSwiftJSONをコレクションタイプとして誤用しないでください。 SwiftyJSONはJSONのように 'nil'値を' NSNull'として扱います。 JSONを標準コレクション型 'Array'と' Dictionary'にパースし、それらを変更します。 – vadian
公正なポイント;私はこれをコード化します。 – user3069232