【发布时间】:2018-03-29 09:15:51
【问题描述】:
我想将字典数组转换为 json 字符串,所以我使用了
func json(from object: NSMutableArray) -> String? {
guard let data = try? JSONSerialization.data(withJSONObject: object) else {
return nil
}
return String(data: data, encoding: String.Encoding.utf8)
}
它返回一个json字符串,但在搅拌之前有一个可选
finalString = json(from: saveArray)
print(finalString)
可选("[{\"CreatedOn\":\"2018 年 3 月 29 日星期四\",\"DayName\":\"Wed\",\"EmployeeID\":\"1\",\ "AppointmentType\":\"3\",\"FromTime\":\"09:00:00\",\"AppointmentDate\":\"2018 年 5 月 16 日星期三\",\"ToTime\": \"10:00:00\",\"CreatedBy\":\"40289\",\"PatientID\":\"17586\",\"ResourceID\":\"1\",\"PatientConditionId\ ":\"17590\"},{\"CreatedOn\":\"2018 年 3 月 29 日星期四\",\"DayName\":\"Thu\",\"EmployeeID\":\"1\" ,\"AppointmentType\":\"3\",\"FromTime\":\"09:00:00\",\"AppointmentDate\":\"2018 年 5 月 17 日星期四\",\"ToTime\ ":\"10:00:00\",\"CreatedBy\":\"40289\",\"PatientID\":\"17586\",\"ResourceID\":\"1\",\" PatientConditionId\":\"17590\"},{\"CreatedOn\":\"2018 年 3 月 29 日星期四\",\"DayName\":\"Fri\",\"EmployeeID\":\"1 \",\"AppointmentType\":\"3\",\"FromTime\":\"09:00:00\",\"AppointmentDate\":\"2018 年 5 月 18 日星期五\",\" ToTime\":\"10:00:00\",\"CreatedBy\":\"40289\",\"PatientID\":\"17586\",\"ResourceID\":\"1\", \"PatientConditionId\":\"17590\"}]")
当我打开这个值时......
finalString = json(from: saveArray)
print(finalString!)
然后我得到...
[
{
"CreatedOn": "Thursday, Mar 29, 2018",
"DayName": "Wed",
"EmployeeID": "1",
"AppointmentType": "3",
"FromTime": "09:00:00",
"AppointmentDate": "Wednesday, May 16, 2018",
"ToTime": "10:00:00",
"CreatedBy": "40289",
"PatientID": "17586",
"ResourceID": "1",
"PatientConditionId": "17590"
},
{
"CreatedOn": "Thursday, Mar 29, 2018",
"DayName": "Thu",
"EmployeeID": "1",
"AppointmentType": "3",
"FromTime": "09:00:00",
"AppointmentDate": "Thursday, May 17, 2018",
"ToTime": "10:00:00",
"CreatedBy": "40289",
"PatientID": "17586",
"ResourceID": "1",
"PatientConditionId": "17590"
},
{
"CreatedOn": "Thursday, Mar 29, 2018",
"DayName": "Fri",
"EmployeeID": "1",
"AppointmentType": "3",
"FromTime": "09:00:00",
"AppointmentDate": "Friday, May 18, 2018",
"ToTime": "10:00:00",
"CreatedBy": "40289",
"PatientID": "17586",
"ResourceID": "1",
"PatientConditionId": "17590"
}
]
只是一个数组结构。
现在如何实现没有可选值的json字符串结构?????
【问题讨论】:
-
放!在 String(data: data, encoding: String.Encoding.utf8) 的末尾
-
不,它返回数组结构...但我想要这个字符串结构.... "[{\"CreatedOn\":\"Thursday, Mar 29, 2018\",\"DayName \":\"Wed\",\"EmployeeID\":\"1\",\"AppointmentType\":\"3\",\"FromTime\":\"09:00:00\",\ "AppointmentDate\":\"2018 年 5 月 16 日星期三\",\"ToTime\":\"10:00:00\",\"CreatedBy\":\"40289\",\"PatientID\": \"17586\",\"ResourceID\":\"1\",\"PatientConditionId\":\"17590\"}]"
-
您的问题似乎是误解了 Swift 中的可选值。我建议阅读 Apple 提供的免费 Swift 书籍(还有许多其他资源),了解什么是 Optionals 以及如何使用它们。这将允许您回答您的问题:D
-
恕我直言,我知道 swift 中的可选值是什么。我的问题是,当我解开字符串时,为什么结构会发生变化?
-
你想说"[{"CreatedOn":"Thursday, Mar 29, 2018","DayName":"Wed","EmployeeID":"1","AppointmentType":" 3","FromTime":"09:00:00","AppointmentDate":"2018 年 5 月 16 日,星期三","ToTime":"10:00:00","CreatedBy":"40289","PatientID ":"17586","ResourceID":"1","PatientConditionId":"17590"}]" 这是swift中的json字符串结构吗?
标签: ios arrays json xcode swift4