簡體   English   中英

NSString到UInt64

[英]NSString to UInt64

你如何從NSString轉換為UInt64

例如,如果存在UInt64Value輔助方法,則類似這樣:

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

我想在iOS項目中這樣做。

為完整性提供另一種可能性:

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;

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

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

您可以使用longLongValue獲取UInt64

NSString *str = @"23147653105732";
UInt64 uint64 = [str longLongValue];

獲取int64另一種方法是:

NSString *str = @"23147653105732";
int64_t int64_t = atoll([str UTF8String]);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM