2017-09-21 10 views
-3

からJSONオブジェクトの配列を作成し、私は、JSONに変換:は、私は辞書の配列を持つJSONオブジェクト

component array = ["17": "3", "12": "we", "14": "3", "19": "3", "16": "3", "13": "2", "18": "3", "15": "3", "2": "3", "11": "1", "1": "1", "8": "3", "6": "5", "4": "21-09-2017 - 14:19", "5": "Test"] 

は、JSONへの変換:

if let theJSONData = try? JSONSerialization.data(withJSONObject: componentArray, options: .prettyPrinted) 
{ 
    let theJSONText = String(data: theJSONData, encoding: .ascii). 
    print("JSON string = (theJSONText!)") 
} 

これは私に、以下の結果を与えています表示:次のように

JSON string = { 
    "17" : "5", 
    "12" : "ew", 
    "14" : "3", 
    "19" : "4", 
    "16" : "4", 
    "13" : "2", 
    "18" : "4", 
    "15" : "2", 
    "2" : "3", 
    "11" : "1", 
    "1" : "1", 
    "8" : "4", 
    "6" : "2", 
    "4" : "21-09-2017 - 13:54", 
    "5" : "Test" 
} 

私はJSONオブジェクトの配列として、それを行う必要があります。

objectX = [ 
    {"id":"17","value":"5"} 
    {"id":"12","value":"ew"} 
    . 
    . 
    . 
] 

ありがとう

+0

これまでに何を試しましたか?それはあなたがする必要がある非常に簡単なループです。 – Stuart

+0

解決策を教えてください、私はスタックオーバーフローとグーグルで多くの方法を試してみましたが、何も働いていませんでした –

+0

@ Ali.Jabあなたのコードをここに置く必要があります!!!誰もあなたの試行を表示せずに直接ソリューションを与えるでしょう –

答えて

0

あなたは

let object = ["17": "3", "12": "we", "14": "3", "19": "3", "16": "3", "13": "2", "18": "3", "15": "3", "2": "3", "11": "1", "1": "1", "8": "3", "6": "5", "4": "21-09-2017 - 14:19", "5": "Test"] 

let componentArray = object.map { ["key" : $0.0, "value": $0.1] } 

配列に[String:String]辞書をマッピングするために最初を持っているあなたは19 "]、[" ID": "5"、 "値""結果からJSON文字列を作成することができます

if let jSONData = try? JSONSerialization.data(withJSONObject: componentArray) { 
    let theJSONText = String(data: jSONData, encoding: .utf8)! 
    print("JSON string = " + theJSONText) 
} 
0

それはコードを入力することは2分私を必要

let componentarray = ["17": "3", "12": "we", "14": "3", "19": "3", "16": "3", "13": "2", "18": "3", "15": "3", "2": "3", "11": "1", "1": "1", "8": "3", "6": "5", "4": "21-09-2017 - 14:19", "5": "Test"] 

var arrayDict:[[String:Any]] = componentarray.map{$0}.map{return ["ID" : $0.key , "value":$0.value]} 

print(arrayDict) 

OUTPUT:

[[ "ID": "17"、 "値": "3"]、 「ID」:「12」「値」「私」「ID」「14」「値」「3」「ID」「19」「値」: ID「16」、「値」、「3」、「ID」:「13」、「値」:「2」、「ID」:「18」、 「ID」:「3」、「ID」:「15」、「値」:「3」、「ID」:「2」、「値」:「3」、「ID」: 1 "、" ID ":" 1 "、" ID ":" 8 "、"値 ":" 3 " 「ID」:「6」、「値」:「5」、「ID」:「4」、「値」:「21-09-2017-14:そして、テスト "]]

関連する問題