iOS 解析未知字典通用方法

在我们解析字典时候会出现很多未知的问题。

下面介绍几种通用字典方法,很好用

+(NSString*)ZyGetString:(id)UnknowObj;

+(NSInteger)ZyGetInteger:(id)UnknowObj;

+(float)ZyGetFloat:(id)UnknowObj;

+(float)ZyGetDouble:(id)UnknowObj;

+(NSDate*)ZyGetDate:(id)UnknowObj;

//解析字符串

+(NSString*)ZyGetString:(id)UnknowObj

{

if((NSObject*)UnknowObj==[NSNull null])

        return nil;

if([UnknowObj isKindOfClass:[NSString class]])

    {

if([UnknowObj isEqualToString:@""])

            return nil;

        return UnknowObj;

    }

    else if([UnknowObj isKindOfClass:[NSNumber class]])

    {

        return[UnknowObj stringValue];

    }

return nil;

}

//解析数字

+(NSInteger)ZyGetInteger:(id)UnknowObj

{

    if((NSObject*)UnknowObj==[NSNull null])

        return -1;

    @try

    {

        return[UnknowObj intValue];

    }

    @catch(NSException *exception)

    {

        return -1;

    }

    @finally

    {

    }

}

+(float)ZyGetFloat:(id)UnknowObj

{

    if((NSObject*)UnknowObj==[NSNull null])

        return 0.0;

    @try

    {

        return[UnknowObj floatValue];

    }

    @catch(NSException *exception)

    {

        return 0.0;

    }

    @finally

    {

    }

}

//解析double类型d 

+(float)ZyGetDouble:(id)UnknowObj

{

    if((NSObject*)UnknowObj==[NSNull null])

        return 0.0;

    @try

    {

        return[UnknowObj doubleValue];

    }

    @catch(NSException *exception)

    {

        return 0.0;

    }

    @finally

    {

    }

}

//解析nsdata类型的

+(NSDate*)ZyGetDate:(id)UnknowObj

{

    if((NSObject*)UnknowObj==[NSNull null])

        return nil;

if([UnknowObj isKindOfClass:[NSString class]])

    {

if([UnknowObj isEqualToString:@""])

            return nil;

        NSString *d = UnknowObj;

        NSDateFormatter *dateFormatter =[[NSDateFormatter alloc]init];

        [dateFormatter setDateFormat: @"yyyy-MM-dd HH:mm:ss"];

        return[dateFormatter dateFromString:d];

    }

    if([UnknowObj isKindOfClass:[NSDate class]])

    {

        return UnknowObj;

    }

return nil;

}

你可能感兴趣的:(iOS 解析未知字典通用方法)