Objective c 通过unicode循环到NSString

Objective c 通过unicode循环到NSString,objective-c,unicode,nsstring,Objective C,Unicode,Nsstring,我试图找出如何循环使用unicode值并创建NSString。我已经想出了如何使用较短的代码: unichar buffer[26]; unichar letter = 0x0041; for (int i = 0; i < 26; i++) { buffer[i] = letter; letter++; } NSLog(@"%@", [NSString stringWithCharacters: buffer len

我试图找出如何循环使用unicode值并创建NSString。我已经想出了如何使用较短的代码:

    unichar buffer[26];
    unichar letter = 0x0041;
    for (int i = 0; i < 26; i++) {
        buffer[i] = letter;
        letter++;
    }
    NSLog(@"%@", [NSString stringWithCharacters: buffer length:26]);
得到3个表情符号


我希望能够获得\u0001111和\U00022222之间所有unicode字符的字符串(随机示例)。这是我第一次和unicodes打交道,这完全让我难堪。任何代码片段或指针都将不胜感激。

并非U+11111和U+22222之间的所有值都在Unicode标准中定义 (比较),所以我采取 例如,不同的范围:

uint32_t first = 0x1F300;
uint32_t last  = 0x1F310;
NSMutableString *string = [NSMutableString string];
for (uint32_t unicode = first; unicode <= last; unicode++) {
    // Create a string from the (4 byte, little-endian) unicode value:
    NSString *tmp = [[NSString alloc] initWithBytes:&unicode length:4 encoding:NSUTF32LittleEndianStringEncoding];

    [string appendString:tmp];
}
NSLog(@"%@", string);
uint32\u t first=0x1F300;
uint32_t last=0x1F310;
NSMutableString*字符串=[NSMutableString];
对于(uint32_t unicode=first;unicode
uint32_t first = 0x1F300;
uint32_t last  = 0x1F310;
NSMutableString *string = [NSMutableString string];
for (uint32_t unicode = first; unicode <= last; unicode++) {
    // Create a string from the (4 byte, little-endian) unicode value:
    NSString *tmp = [[NSString alloc] initWithBytes:&unicode length:4 encoding:NSUTF32LittleEndianStringEncoding];

    [string appendString:tmp];
}
NSLog(@"%@", string);