Xcode NSUTF8StringEncoding后的字符串问题
我试图从服务器下载一个JSON字符串,但它看起来不像应该的样子。 很抱歉格式化,第一次使用stackoverflow 从接收到的字符串和php的var_转储的比较中可以看出, 已删除Xcode NSUTF8StringEncoding后的字符串问题,xcode,json,Xcode,Json,我试图从服务器下载一个JSON字符串,但它看起来不像应该的样子。 很抱歉格式化,第一次使用stackoverflow 从接收到的字符串和php的var_转储的比较中可以看出, 已删除arr[LISTING][中的密钥。。因此,我进一步的JSON解码将来自arr[LISTING][的条目视为一个值,而不是另一个数组子维度 有什么想法吗 我尝试的是: NSData *serverRes = [NSURLConnection sendSynchronousRequest:request returni
arr[LISTING][
中的密钥。。因此,我进一步的JSON解码将来自arr[LISTING][
的条目视为一个值,而不是另一个数组子维度
有什么想法吗
我尝试的是:
NSData *serverRes = [NSURLConnection sendSynchronousRequest:request returningResponse:&response error:&error];
NSString *serverRes_str=[[NSString alloc]initWithData:serverRes encoding:NSUTF8StringEncoding];
NSLog(@"%@",serverRes_str);
这看起来像什么:
{"STATUS":{"RESULT":"OK","CODE":205,"INFO":"GET_PROJECTS","AUTHENTICATED":1,"USERID":1,"ACCESS":1000,"SYSTEM_NAME":"Testdatei","SSL":false,"IDENTIFIER":""},"CONTENT":{"GET_PROJECTS":{"COUNT":7,"LISTING":[{"ID":"1","NAME":"Devel","CREATION_DATE":"1357116685","CREATED_BY":"admin","TYPE":"PROJECT","PUBLIC":false,"PRIVAT":false,"ACCESS":3,"THUMBNAIL":""},{"ID":"30","NAME":"p5","CREATION_DATE":"1365866791","CREATED_BY":"admin","TYPE":"PROJECT","PUBLIC":false,"PRIVAT":false,"ACCESS":3,"THUMBNAIL":""},{"ID":"29","NAME":"p4","CREATION_DATE":"1365866785","CREATED_BY":"admin","TYPE":"PROJECT","PUBLIC":false,"PRIVAT":false,"ACCESS":3,"THUMBNAIL":""},{"ID":"28","NAME":"p3","CREATION_DATE":"1365866780","CREATED_BY":"admin","TYPE":"PROJECT","PUBLIC":false,"PRIVAT":false,"ACCESS":3,"THUMBNAIL":""},{"ID":"27","NAME":"p2","CREATION_DATE":"1365866773","CREATED_BY":"admin","TYPE":"PROJECT","PUBLIC":false,"PRIVAT":false,"ACCESS":3,"THUMBNAIL":""},{"ID":"26","NAME":"p1","CREATION_DATE":"1365866767","CREATED_BY":"admin","TYPE":"PROJECT","PUBLIC":false,"PRIVAT":false,"ACCESS":3,"THUMBNAIL":""},{"ID":"4","NAME":"Testimmortals","CREATION_DATE":"1362388820","CREATED_BY":"admin","TYPE":"PROJECT","PUBLIC":false,"PRIVAT":false,"ACCESS":3,"THUMBNAIL":""}]}}}
它应该是什么样子的:
array(2) {
["COUNT"]=>
int(7)
["LISTING"]=>
array(7) {
[0]=>
array(9) {
["ID"]=>
string(1) "1"
["NAME"]=>
string(5) "Devel"
["CREATION_DATE"]=>
string(10) "1357116685"
["CREATED_BY"]=>
string(5) "admin"
["TYPE"]=>
string(7) "PROJECT"
["PUBLIC"]=>
bool(false)
["PRIVAT"]=>
bool(false)
["ACCESS"]=>
int(3)
["THUMBNAIL"]=>
string(92) ""
}
[1]=>
array(9) {
["ID"]=>
string(2) "30"
["NAME"]=>
string(2) "p5"
["CREATION_DATE"]=>
string(10) "1365866791"
["CREATED_BY"]=>
string(5) "admin"
["TYPE"]=>
string(7) "PROJECT"
["PUBLIC"]=>
bool(false)
["PRIVAT"]=>
bool(false)
["ACCESS"]=>
int(3)
["THUMBNAIL"]=>
string(93) ""
}
[2]=>
array(9) {
["ID"]=>
string(2) "29"
["NAME"]=>
string(2) "p4"
["CREATION_DATE"]=>
string(10) "1365866785"
["CREATED_BY"]=>
string(5) "admin"
["TYPE"]=>
string(7) "PROJECT"
["PUBLIC"]=>
bool(false)
["PRIVAT"]=>
bool(false)
["ACCESS"]=>
int(3)
["THUMBNAIL"]=>
string(93) ""
}
[3]=>
array(9) {
["ID"]=>
string(2) "28"
["NAME"]=>
string(2) "p3"
["CREATION_DATE"]=>
string(10) "1365866780"
["CREATED_BY"]=>
string(5) "admin"
["TYPE"]=>
string(7) "PROJECT"
["PUBLIC"]=>
bool(false)
["PRIVAT"]=>
bool(false)
["ACCESS"]=>
int(3)
["THUMBNAIL"]=>
string(93) ""
}
[4]=>
array(9) {
["ID"]=>
string(2) "27"
["NAME"]=>
string(2) "p2"
["CREATION_DATE"]=>
string(10) "1365866773"
["CREATED_BY"]=>
string(5) "admin"
["TYPE"]=>
string(7) "PROJECT"
["PUBLIC"]=>
bool(false)
["PRIVAT"]=>
bool(false)
["ACCESS"]=>
int(3)
["THUMBNAIL"]=>
string(93) ""
}
[5]=>
array(9) {
["ID"]=>
string(2) "26"
["NAME"]=>
string(2) "p1"
["CREATION_DATE"]=>
string(10) "1365866767"
["CREATED_BY"]=>
string(5) "admin"
["TYPE"]=>
string(7) "PROJECT"
["PUBLIC"]=>
bool(false)
["PRIVAT"]=>
bool(false)
["ACCESS"]=>
int(3)
["THUMBNAIL"]=>
string(93) ""
}
[6]=>
array(9) {
["ID"]=>
string(1) "4"
["NAME"]=>
string(13) "Testimmortals"
["CREATION_DATE"]=>
string(10) "1362388820"
["CREATED_BY"]=>
string(5) "admin"
["TYPE"]=>
string(7) "PROJECT"
["PUBLIC"]=>
bool(false)
["PRIVAT"]=>
bool(false)
["ACCESS"]=>
int(3)
["THUMBNAIL"]=>
string(92) ""
}
}
}
您是否尝试过iOS附带的JSON库? 它有一个非常方便的方法,如下所示:
NSArray *responseValues = [responseString JSONValue];
或
- 您可以以数组或字典的形式获取它,因为
方法返回一个JSONValue
,所以您可以适应所接收的任何内容id
希望有帮助。好吧,既然字符串已经错了,那就不是json解码的错。。我认为这甚至是api。。让我深入探讨一下……好吧,看起来我已经修复了->json_encode($array,json_FORCE_OBJECT)遗漏了这个力……那么问题是来自您的php文件?
NSDictionary *responseValues = [responseString JSONValue];