Получить длинное значение из строки NSString - PullRequest
3 голосов
/ 22 апреля 2011

Мне нужно получить значение long от NSString.

Например, у меня есть это:

NSString *test = @"5437128";

, и мне нужно:

long myLong = 5437128;   

Как я могу получить это long значение из NSString?

Спасибо, это поможет мне!

Ответы [ 4 ]

15 голосов
/ 22 апреля 2011
long longVariable = [test longLongValue];  

См. NSString документацию ..

0 голосов
/ 27 марта 2017

Я использую следующее, если вы не хотите потерять значение дроби вашего числа

double x =[stringValue doubleValue];

вместо

 double x = [stringValue  longLongValue];

, если мы предположим, что у насстроковое значение, и мы хотим преобразовать его в удвоение у нас есть 2 способа

NSString * stringValue = @"31.211529225111";
way #1 
    double x = [stringValue  longLongValue];
result will be  :  x = 31

way #2 
    double x =[stringValue doubleValue];
result will be  :  x = 31.211529225111001
0 голосов
/ 12 февраля 2014

используйте этот код:

NSNumberFormatter *numberFormatter = [[NSNumberFormatter alloc] init];
long number = [[numberFormatter numberFromString:string] longValue];
[numberFormatter release];
0 голосов
/ 22 апреля 2011

Используйте NSScanner, как показано в следующем коде:

  unsigned x;

[[NSScanner scannerWithString: s2] scanHexInt: &x];

при вводе scanHexInt остановитесь при сканировании и убедитесь, что вам нужно - есть много возможностей получить значения из строк ....

Возможно, вы захотите использовать scanlonglong ... объявив вашу переменную длинной

...