作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我尝试将NSDictionary JSON编码为NSArray上载到PHP Web服务。
这就是我对我的NSArray进行JSON编码的方式:
NSError * error;
NSData * jsonData = [NSJSONSerialization dataWithJSONObject:my_array_1 options:0 error:&error];
NSString * jsonString = [[NSString alloc] initWithData:jsonData encoding:NSUTF8StringEncoding];
jsonString = [jsonString stringByReplacingOccurrencesOfString:@"\"" withString:@"\\\""];
NSString * jsonRequest = [NSString stringWithFormat: @"{\"request\":\"syncBookmark\",\"bookmark_array\":\"%@\",\"user_id\":\"%@\"}", jsonString, user_id, nil];
NSData * requestData = [NSData dataWithBytes:[jsonRequest UTF8String] length:[jsonRequest length]];
{"request":"syncBookmark","bookmark_array":"[{\"PostId\":\"4\",\"last_edit_date\":\"2014-03-03 01:05:37\",\"BookmarkId\":\"1\",\"last_sync_date\":\"\",\"is_active\":\"1\"}]","user_id":"7"}
最佳答案
不要打扰stringByReplacingOccurrencesOfString
东西。让NSJSONSerialization
为您完成所有必要的报价。
因此,如果您确实需要jsonString
作为PHP将递归地对其进行反编码的字符串,则只需JSON对数组进行编码,然后将其放入另一个字典中,然后再次对其进行编码:
NSError *error;
NSData *jsonData = [NSJSONSerialization dataWithJSONObject:my_array_1 options:0 error:&error];
NSString *jsonString = [[NSString alloc] initWithData:jsonData encoding:NSUTF8StringEncoding];
NSDictionary *dictionary = @{@"request" : @"syncBookmark",
@"bookmark_array" : jsonString,
@"user_id" : user_id};
NSData *finalData = [NSJSONSerialization dataWithJSONObject:dictionary options:0 error:&error];
NSError *error;
NSDictionary *dictionary = @{@"request" : @"syncBookmark",
@"bookmark_array" : my_array_1,
@"user_id" : user_id};
NSData *finalData = [NSJSONSerialization dataWithJSONObject:dictionary options:0 error:&error];
json_decode
进行多次调用。
关于ios - 如何对从iOS到PHP的数组中的数组进行JSON编码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22131514/
我是一名优秀的程序员,十分优秀!