ios随笔

1、有需要得到textfield中的字符长度、可视在输入框中有汉字、英文、字符等、直接计算得到的不准确、就用下面方法

` - (void)viewDidLoad {
[super viewDidLoad];
//第一种方法
NSLog(@"第一种方法长度为:%i",[self convertToInt:@"1234567我是中国人"]);
//第二种方法
NSLog(@"第二种方法长度为:%ld",[self getToInt:@"1234567我是中国人"]);
}
//方法1

 >  - (int)convertToInt:(NSString*)tempStr {
    int strlength = 0;
    char* p = (char*)[tempStr cStringUsingEncoding:NSUnicodeStringEncoding];
    for (int i=0 ; i<[tempStr lengthOfBytesUsingEncoding:NSUnicodeStringEncoding] ;i++) {
        if (*p) {
            p++;
            strlength++;
        }
        else {
            p++;
        }
    }
    return strlength;
}

//方法2

 >   - (NSInteger)getToInt:(NSString*)tempStr {
    NSStringEncoding enc = CFStringConvertEncodingToNSStringEncoding(kCFStringEncodingGB_18030_2000);
    NSData* da = [tempStr dataUsingEncoding:enc];
    return [da length];
}

结果如下图:

ios随笔_第1张图片
获取中英混合字符串的长度.png

2、在填写密码时候、有时候会有这种需求、去除textfiled中字符串首尾的空格、中间有的不用管

NSString *passWord = @"  12345 6   ";
NSString *newPass = [passWord stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceCharacterSet]];
NSLog(@"passWord=%@ , 长度为:%lu, newPass=%@, 长度为:%lu", passWord, (unsigned long)passWord.length, newPass, (unsigned long)newPass.length);
> 输出结果如下:
> ![密码去除首尾空格.png](http://upload-images.jianshu.io/upload_images/2144883-4deb7d9d31e4ab08.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)

3、 再说吧、、

你可能感兴趣的:(ios随笔)