UTF8编码:汉字占3个字节,英文字符占1个字节
NSString *text = @"i'm a 苹果。...";
int length = [text length];
for (int i=0; i<length; ++i)
{
NSRange range = NSMakeRange(i, 1);
NSString *subString = [text substringWithRange:range];
const char *cString = [subString UTF8String];
if (strlen(cString) == 3)
{
NSLog(@"汉字:%s", cString);
}
}
|
4
5
6
|
NSString *str = @"i'm a 苹果。...";for(int i=0; i< [str length];i++){int a = [str characterAtIndex:i];if( a > 0x4e00 && a < 0x9fff)NSLog(@"汉字");} |
|
4
5
6
|
NSString *str = @"i'm a 苹果。...";for(int i=0; i< [str length];i++){int a = [str characterAtIndex:i];if( a > 0x4e00 && a < 0x9fff)NSLog(@"汉字");} |
|
1
2
3
4
5
6
|
NSString *str = @"i'm a 苹果。...";for(int i=0; i< [str length];i++){int a = [str characterAtIndex:i];if( a > 0x4e00 && a < 0x9fff)NSLog(@"汉字");} |
本文介绍了UTF8编码中汉字和英文字符所占字节数的区别,并提供了两种使用Objective-C编程语言检测字符串中汉字的方法。一种是通过遍历字符串并检查每个字符的UTF8编码长度来判断是否为汉字,另一种则是直接比较字符的Unicode值来确定。
393

被折叠的 条评论
为什么被折叠?



