ios CCRandomGenerateBytes 生成定长随机字符串

我们有时在项目中会遇到需要生成随机字符串的需求,现在说明其中的一种方法(利用苹果自带的库);

一、在工程内导入头文件

//这是导入了所有加密库的头文件
#import <CommonCrypto/CommonCrypto.h>
//如果只是使用random函数,那么只要做如下导入即可
#import <CommonCrypto/CommonRandom.h>

二、函数的使用

//利用CCRandomGenerateBytes实现随机字符串的生成
- (NSString *)randomString:(NSInteger)length {
    length = length/2;
    unsigned char digest[length];
    CCRNGStatus status = CCRandomGenerateBytes(digest, length);
    NSString *s = nil;
    if (status == kCCSuccess) {
        s = [self stringFrom:digest length:length];
    } else {
        s = self;
    }
    NSLog(@"randomLength---:%@",s);
    return s;
}
//将bytes转为字符串
- (NSString *)stringFrom:(unsigned char *)digest length:(NSInteger)leng {
    NSMutableString *string = [NSMutableString string];
    for (int i = 0; i < leng; i++) {
        [string appendFormat:@"%02x",digest[i]];
    }
    NSLog(@"final stringFrom:%@",string);
    return string;
}
发布了172 篇原创文章 · 获赞 35 · 访问量 39万+

猜你喜欢

转载自blog.csdn.net/u012198553/article/details/78707197