Ios 正在检查JSON集合中的零长度数组

Ios 正在检查JSON集合中的零长度数组,ios,json,nsarray,nsdictionary,nsmutabledictionary,Ios,Json,Nsarray,Nsdictionary,Nsmutabledictionary,我返回了我正在解析的JSON数据集 如果数据包含一条记录,则如下所示: dictData: { Recordset = ( { Record = ( { MyDate = "2016-06-15 11:04:43"; MyID = 53070;

我返回了我正在解析的JSON数据集

如果数据包含一条记录,则如下所示:

dictData: {
    Recordset =     (
                {
            Record = (
                                {
                    MyDate = "2016-06-15 11:04:43";
                    MyID = 53070;
                    SomeDescription = "";

                }
            );
        }
    );
}
如果数据不包含记录,则如下所示: 注意返回集中的“”导致了我的问题。

dictData: {
    Recordset =     (
        ""
    );
}
我无法解释记录集中的零长度数组

这是我解析数据的基本代码

NSDictionary * dictData = [NSDictionary dictionaryWithDictionary:[someOtherDictionary objectForKey:@"Data"]];
NSArray * arrRecordSet  = [dictData objectForKey:@"Recordset"];

if([arrRecordSet objectAtIndex:0] != nil) {
    NSLog(@"CONTAINS RECORDS");
    //Do something with the records
}
else {
    NSLog(@"DOES NOT CONTAIN RECORDS");
}
我尝试过各种迭代,比如检查
[arrRecordSet objectAtIndex:0]
长度是否大于零,或者检查计数大小

我想这双引号让我很反感

有什么帮助吗

更新

请求的原始JSON

一条记录

{
    APIResponse =     {
        Data =         {
            Recordset =             (
                                {
                    Record =                     (
                                                {
                            MyDate = "2016-06-15 11:04:43";
                            MyID = 53070;
                            SomeDescription = "";
                        }
                    );
                }
            );
        };
    };
}
没有记录

{
    APIResponse =     {
        Data =         {
            Recordset =  (
                               ""
            );
        };
    };
}

在这里,您应该首先检查dictionary记录集的all key如果它返回you count>0,则可以说数据可用,如果不可用,则有一个空白条目。

因此,如果成功,
记录集
值是一个带字典的数组,如果失败,
记录集
值是一个数组用一根绳子

因此:


当您记录arrRecordSet.count时,它显示了什么?它显示的计数为1。如果返回1条记录,它也会显示1的计数。您是否可以显示一个有效的JSON作为示例,而不是解析的nsdictionary的控制台日志?@arturdev我已经更新了这个问题,以包括原始JSON。设计服务器端的人根本不是专业人员,但您可以做的是检查
“记录集”是否
的数组有一个
字符串
项,如果没有,则可以检查
字典
项。谢谢!这是去检查Iskind of Class的方法!
NSArray *recordSet = response[@"APIResponse"][@"Data"][@"Recordset"];
if ([recordSet count] > 0 &&
    [recordSet[0] isKindOfClass:[NSDictionary class]]) {
    // Success
    NSDictionary *record = recordSet[0];
    ...
} else {
    // Failure
}