2017-08-18 8 views
-1

私はSwiftで1つの配列を作成しました。私は、私はAPIでこのディックに合格することができカントこのSwift3配列は "{" type ":" 0 "}のように文字列に変換されます。

let Dic = "{\"type\": \"0\",\"message\": \"\(message)\", \"sender_id\":\"\(username)\", \"reciever_id\": \"61\", \"\(username)\": \"2017-05-09 03:02:55 PM\"}" 

のような文字列型のデータを渡すこのAPIでは、1つのNode.jsのAPIを持っています。しかし、問題は、配列を文字列に変換する方法を1つの配列に持つことです。私はディックに1つの以上のパラメータを追加し、ここで、この配列が、私はこの配列

(
     { 
     Desc = "This is suger for m23 type "; 
     Price = 50; 
     Product = "Suger temp"; 
    }, 
     { 
     Desc = "This is suger for m23 type "; 
     Price = 50; 
     Product = "Suger temp"; 
    } 
) 

コードは、スウィフトに

let ary_allPRoduct :NSMutableArray = [] 

      for i in 0..<count { 
       var dict = Dictionary<String, Any>() 
       dict["Product"]="Suger temp" 
       dict["Desc"]="This is suger for m23 type " 
       dict["Price"]="50" 

       ary_allPRoduct.add(dict) 

      } 

      print(ary_allPRoduct) 

答えて

0

で生成していますどのように私のコードで渡す必要があり、このコードを適用してください。

let jsonData = try? JSONSerialization.data(withJSONObject: dictionary, options: JSONSerialization.WritingOptions()) 
let jsonString = NSString(data: jsonData!, encoding: String.Encoding.utf8.rawValue) 
print(jsonString) 

注:通常、コンソールでは文字列が印刷されます。しかし、あなたがブレークポイントでそれをチェックすれば。あなたが必要とする正確なフォーマットが表示されます。コンソールで

:({ "ナチョ":[ "1"、 "2"、 "3"]})

そして How its should look on Breakpoint

+0

'jsonString'が'せjsonString =はるかに短いを作成することができます文字列(データ:jsonData !,エンコーディング:.utf8) '。 SwiftでNSStringを使う必要は全くなく、 'options'パラメータを' data(withJSONObject')で省略することができます – vadian

関連する問題