iOS之由身份证号返回性别

该博文出自:http://www.cnblogs.com/yang-guang-girl/p/5683454.html

- (void)viewDidLoad
{
    [super viewDidLoad];
    // Do any additional setup after loading the view.
    
    NSString *sex=[self sexStrFromIdentityCard:@"139876456767892345"];
    NSLog(@"--sex--%@",sex);
    
}
//由身份证号返回为性别
-(NSString *)sexStrFromIdentityCard:(NSString *)numberStr{
    NSString *result = nil;
    
    BOOL isAllNumber = YES;
    
    if([numberStr length]<17)
        return result;
    
    //**截取第17为性别识别符
    NSString *fontNumer = [numberStr substringWithRange:NSMakeRange(16, 1)];
    
    //**检测是否是数字;
    const char *str = [fontNumer UTF8String];
    const char *p = str;
    while (*p!='') {
        if(!(*p>='0'&&*p<='9'))
            isAllNumber = NO;
        p++;
    }
    
    if(!isAllNumber)
        return result;
    
    int sexNumber = [fontNumer integerValue];
    if(sexNumber%2==1)
        result = @"男";
    ///result = @"M";
    else if (sexNumber%2==0)
        result = @"女";
    //result = @"F";
    
    return result;
    
    
}
 

输出

2015-10-22 10:33:38.518 由身份证号码返回性别[2356:74542] --sex--女
原文地址:https://www.cnblogs.com/rglmuselily/p/5733174.html