码迷,mamicode.com
首页 > 其他好文 > 详细

【代码笔记】判断中英文混合的字符长度的两种方法

时间:2016-05-05 09:37:20      阅读:129      评论:0      收藏:0      [点我收藏+]

标签:

一,代码。

技术分享
- (void)viewDidLoad
{
    [super viewDidLoad];
    // Do any additional setup after loading the view.
    
    //第一种方法
    NSLog(@"--first-%i",[self convertToInt:@"123我爱你"]);
    //第二种方法
    NSLog(@"--second--%ld",[self getToInt:@"123我爱你"]);
    
}

//得到中英文混合字符串长度 方法1
- (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;
}

//得到中英文混合字符串长度 方法2
- (NSInteger)getToInt:(NSString*)strtemp

{
    NSStringEncoding enc = CFStringConvertEncodingToNSStringEncoding(kCFStringEncodingGB_18030_2000);
    NSData* da = [strtemp dataUsingEncoding:enc];
    return [da length];
}
技术分享

 

二,输出。

2015-10-19 15:36:43.730 判断中英文混合的字符长度的两种方法[9311:234111] --first-9
2015-10-19 15:36:43.736 判断中英文混合的字符长度的两种方法[9311:234111] --second--9

 

 

 
 

【代码笔记】判断中英文混合的字符长度的两种方法

标签:

原文地址:http://www.cnblogs.com/yang-guang-girl/p/5460518.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!