提问者:小点点

NSString到UInt64


如何从NSString转换为UInt64

例如,如果存在UInt64Value辅助方法,则类似于此:

NSString *value = @"1234567";
UInt64 convertedValue = [value UInt64Value];

我试图在一个iOS项目中做到这一点。


共3个答案

匿名用户

提出另一种完整性的可能性:

NSScanner *scanner = [NSScanner scannerWithString:value];
unsigned long long convertedValue = 0;
[scanner scanUnsignedLongLong:&convertedValue];
return convertedValue;

…如果您想区分查找值为0和查找非数字的内容,请检查scanUnsignedLongLong上的结果。

匿名用户

NSString * num = @"123456";

NSNumberFormatter * numberFormatter = [[NSNumberFormatter alloc]init];
NSNumber *  number = [numberFormatter numberFromString:num];
unsigned long long valueUInt64 = number.unsignedLongLongValue;

匿名用户

您可以使用strturll(const char*, char**,int)如下:

NSString *value = @"1234567";
UInt64 convertedValue = strtoull([value UTF8String], NULL, 0);