要使用SwiftyJSON生成JSON字符串,請使用rawString(encoding: UInt = default, options opt: NSJSONWritingOptions = default)
。這樣字符串將不會包含像新行一樣的無效字符。
實施例爲一個字典:
let keys = ["firstName", "lastName", "age","carNumber", "licenseNumber", "email","password", "msgType"]
let objects = ["Pencil", "Eraser", "2332","534543", "543543", "Notebook","Pencil", "ADD_DRIVER"]
let dict = NSDictionary(objects: objects, forKeys: keys)
let jsonObj = JSON(dict)
if let stringJSON = jsonObj.rawString(NSUTF8StringEncoding, options: []) {
print(stringJSON)
}
結果:
{ 「姓氏」: 「橡皮擦」, 「密碼」: 「鉛筆」, 「年齡」: 「2332」,」名字 「:」 鉛筆」, 「licenseNumber」: 「543543」, 「電子郵件」: 「筆記本電腦」, 「carNumber」: 「534543」, 「信息類型」: 「ADD_DRIVER」}
如果像你的代碼片段你希望它在數組之前編碼爲JSON字符串,然後將它嵌入到N陣列是這樣的:
let keys = ["firstName", "lastName", "age","carNumber", "licenseNumber", "email","password", "msgType"]
let objects = ["Pencil", "Eraser", "2332","534543", "543543", "Notebook","Pencil", "ADD_DRIVER"]
let dict = NSDictionary(objects: objects, forKeys: keys)
let jsonObj = JSON([dict])
if let stringJSON = jsonObj.rawString(NSUTF8StringEncoding, options: []) {
print(stringJSON)
}
結果:
[{ 「MSGTYPE」: 「ADD_DRIVER」, 「密碼」: 「鉛筆」, 「名字」: 「鉛筆」, 「年齡」: 「2332」,「email」:「筆記本」,「carNumber」:「534543」,「licenseNumber」:「543543」,「lastName」:「橡皮擦」}]
您應該添加一條關於期望輸出爲...如果您創建Dictionary類型的數據,會發生什麼情況? –
我期望輸出是一個有效的JSON字符串,我可以發佈到服務器。 –