美文网首页
如何得到中英文混合下的NSString的长度?

如何得到中英文混合下的NSString的长度?

作者: seventhboy | 来源:发表于2017-02-06 14:39 被阅读33次

方法一:

  • (int)getStringLength:(NSString*)strtemp
    {

    NSStringEncoding enc = CFStringConvertEncodingToNSStringEncoding(kCFStringEncodingGB_18030_2000);

    NSData* da = [strtemp dataUsingEncoding:enc];

    return [da length];

}

方法二:

  • (int)convertToInt:(NSString*)strtemp

{

int strlength = 0;

char* p = (char*)[strtemp cStringUsingEncoding:NSUnicodeStringEncoding];

for (int i=0 ; i<[strtemp lengthOfBytesUsingEncoding:NSUnicodeStringEncoding] ;i++) {

    if (*p) {

        p++;

        strlength++;

    }

    else {
        
        p++;
        
    }
    
    
    
}

return strlength;

}

相关文章

网友评论

      本文标题:如何得到中英文混合下的NSString的长度?

      本文链接:https://www.haomeiwen.com/subject/awxuittx.html