Я знаю, что на этот вопрос уже был дан ответ, но если кто-то захочет повторно использовать мой код для преобразования из стандартной строки чисел в верхний индекс, вот он.
-(NSString *)superScriptOf:(NSString *)inputNumber{
NSString *outp=@"";
for (int i =0; i<[inputNumber length]; i++) {
unichar chara=[inputNumber characterAtIndex:i] ;
switch (chara) {
case '1':
NSLog(@"1");
outp=[outp stringByAppendingFormat:@"\u00B9"];
break;
case '2':
NSLog(@"2");
outp=[outp stringByAppendingFormat:@"\u00B2"];
break;
case '3':
NSLog(@"3");
outp=[outp stringByAppendingFormat:@"\u00B3"];
break;
case '4':
NSLog(@"4");
outp=[outp stringByAppendingFormat:@"\u2074"];
break;
case '5':
NSLog(@"5");
outp=[outp stringByAppendingFormat:@"\u2075"];
break;
case '6':
NSLog(@"6");
outp=[outp stringByAppendingFormat:@"\u2076"];
break;
case '7':
NSLog(@"7");
outp=[outp stringByAppendingFormat:@"\u2077"];
break;
case '8':
NSLog(@"8");
outp=[outp stringByAppendingFormat:@"\u2078"];
break;
case '9':
NSLog(@"9");
outp=[outp stringByAppendingFormat:@"\u2079"];
break;
case '0':
NSLog(@"0");
outp=[outp stringByAppendingFormat:@"\u2070"];
break;
default:
break;
}
}
return outp;
}
Учитывая входную строку чисел, этопросто возвращает эквивалентную строку верхнего индекса.
Редактировать (спасибо jrturton):
-(NSString *)superScriptOf:(NSString *)inputNumber{
NSString *outp=@"";
unichar superScripts[] = {0x2070, 0x00B9, 0x00B2,0x00B3,0x2074,0x2075,0x2076,0x2077,0x2078,0x2079};
for (int i =0; i<[inputNumber length]; i++) {
NSInteger x =[[inputNumber substringWithRange:NSMakeRange(i, 1)] integerValue];
outp=[outp stringByAppendingFormat:@"%C", superScripts[x]];
}
return outp;
}