我有一个 PHP 服务,它以 NSData 格式返回以下响应。使用以下方法将其转换为 NSString 后:
NSString *html = [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding];
我得到以下信息:
[
{
"Emp_Name": "Krishna Mamidi",
"Emp_Designation": "Driver",
"Emp_Type": "Permanent",
"Joining_Date": "05-MAR-2011",
"Salary": 10000
},
{
"Emp_Name": "Aditya Reddy",
"Emp_Designation": "supervisor",
"Emp_Type": "Permanent",
"Joining_Date": "06-MAR-2011",
"Salary": 9000
},
{
"Emp_Name": "Rajiv krishna",
"Emp_Designation": "director",
"Emp_Type": "Permanent",
"Joining_Date": "01-MAR-2011",
"Salary": 100000
}
]
以上是正确的 JSON 格式。
收到上述的 NSData 格式后,我使用以下内容将其转换为 JSON 字典:
NSError *error = nil;
id jsonObject = [NSJSONSerialization
JSONObjectWithData:data
options:NSJSONWritingPrettyPrinted error:&error];
NSDictionary *deserializedDictionary = nil;
if (jsonObject != nil && error == nil)
{
if ([jsonObject isKindOfClass:[NSDictionary class]])
{
//Convert the NSData to NSDictionary in this final step
deserializedDictionary = (NSDictionary *)jsonObject;
}
}
但是“反序列化字典”始终为空或为空。基本上它从来没有出现在上面的 If 循环中。
我一直试图弄清楚这一点,但我无法做到。请帮忙