从NSString中获取一个很长的值

我需要从NSString获得一个long值。

例如,我有这个:

 NSString *test = @"5437128"; 

我需要:

 long myLong = 5437128; 

我如何从NSString获得这个long价值?

谢谢,这会帮助我!

像下面的代码一样使用NSScanner:

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

当在扫描时inputscanHexInt停止,并看看自己需要哪一个 – 有很多可能性从string获取值….

你可能想要使用scanlonglong …已经宣布你的variables很长

 long longVariable = [test longLongValue]; 

请参阅NSString文档..

使用这个代码:

 NSNumberFormatter *numberFormatter = [[NSNumberFormatter alloc] init]; long number = [[numberFormatter numberFromString:string] longValue]; [numberFormatter release]; 

如果您不想丢失您的号码的分数值,我使用以下内容

 double x =[stringValue doubleValue]; 

代替

  double x = [stringValue longLongValue]; 

如果我们假设我们有下面的string值,我们想把它转换为double,我们有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