随机生成汉字和字符串

/*

*生成汉字

*num:汉字个数

*/

- (NSString *)randomCreatChineseWithNum:(NSInteger)num{
    NSStringEncoding gbkEncoding = CFStringConvertEncodingToNSStringEncoding(kCFStringEncodingGB_18030_2000);

    NSInteger randomH = 0xA1+arc4random()%(0xFE - 0xA1+1);

    NSInteger randomL = 0xB0+arc4random()%(0xF7 - 0xB0+1);

    NSInteger number = (randomH<<8)+randomL;

    NSData *data = [NSData dataWithBytes:&number length:2];

    NSString *string = @"";

    for (int i = 0; i < num; i ++) {

        if ([string isEqualToString:@""]) {

            string = [[NSString alloc] initWithData:data encoding:gbkEncoding];

        }else{

            string = [NSString stringWithFormat:@"%@%@",string,string];

        }

    }

    return string;

}

/*

*生成字符

*num:字符个数

*/

- (NSString *)getRandomStringWithNum:(NSInteger)num{

    NSString *string = [[NSString alloc]init];

    for (int i = 0; i < num; i++) {

        int number = arc4random() % 36;

        if (number < 10) {

            int figure = arc4random() % 10;

            NSString *tempString = [NSString stringWithFormat:@"%d", figure];

            string = [string stringByAppendingString:tempString];

        }else {

            int figure = (arc4random() % 26) + 97;

            char character = figure;

            NSString *tempString = [NSString stringWithFormat:@"%c", character];

            string = [string stringByAppendingString:tempString];

        }

    }

    return string;

}
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容