搜索了网上大部分文章都是从判断字符是汉字、字母的角度去判断字节数,语焉不详,以下提供一种新的思路去判断字节数问题
#pragma mark 查找小于240个字节的字符
-(NSString *)getResultString:(NSString *)string
{
NSString *resultString = [self findCharPosition:string.length with:string];
return resultString;
}
//从字符串的最后一位递归开始计算字符串的字节数,直到找到符合条件的子字符串
-(NSString *)findCharPosition:(int)pos with:(NSString *)string
{
NSRange range = NSMakeRange(0, pos-1);
NSString *resultString = [string substringWithRange:range];
long strlength = strlen([resultString UTF8String]);
if (strlength <= 240) {
return resultString;
}
return [self findCharPosition:pos-2 with:string];
}