Конвертировать NSString в NSInteger?

Я хочу конвертировать stringdata в NSInteger,

7 ответов

Если строка представляет собой удобочитаемое представление числа, вы можете сделать это:

NSInteger myInt = [myString intValue];

[myString intValue] возвращает cType "int"

[myString integerValue] возвращает NSInteger,

В большинстве случаев я нахожу эти простые функции, просматривая ссылки на классы яблок. Самый быстрый способ получить это - нажать кнопку [опция] и дважды щелкнуть по объявлению класса (в данном случае NSString).

Я нашел, что это правильный ответ.

NSInteger myInt = [someString integerValue];
NSNumber *tempVal2=[[[NSNumberFormatter alloc] init] numberFromString:@"your text here"];

возвращает NULL, если строка, или возвращает NSNumber

NSInteger intValue=[tempVal2 integerValue];

возвращает целое число NSNumber

Это безопаснее, чем integerValue:

-(NSInteger)integerFromString:(NSString *)string
{
    NSNumberFormatter *formatter=[[NSNumberFormatter alloc]init];
    [formatter setNumberStyle:NSNumberFormatterDecimalStyle];
    NSNumber *numberObj = [formatter numberFromString:string];
    return [numberObj integerValue];
}
int myInt = [myString intValue];
NSLog(@"Display Int Value:%i",myInt);
NSString *string = [NSString stringWithFormat:@"%d", theinteger];
Другие вопросы по тегам