我無法將長期NSString
可靠地轉換爲NSNumber
。具體而言,我將MPMediaEntityPropertyPersistentID
作爲字符串轉換爲NSNumber
有時它起作用,通常不起作用。將長NSString轉換爲NSNumber
轉換代碼:
NSString *keke = [jsonArray objectForKey:@"next"];
NSNumberFormatter * f = [[NSNumberFormatter alloc] init];
[f setNumberStyle:NSNumberFormatterDecimalStyle];
NSNumber *persistentIDasNumber = [f numberFromString:keke];
這是一個成功的字符串到數字轉換的示例:
String: 3813955856659208324
Number: 3813955856659208324
這裏是一個不成功的轉換:
String: 12790162104953153719
Number:1.279016210495315e+19
已經很接近了,但最後發生了什麼?它太大了嗎?
它必須是NSNumber嗎?或者它可以是一個int或無符號整數或浮點數? – CaptJak
我認爲它必須是一個'NSNumber',因爲媒體播放器的功能就是這樣。但是,如果您可以發佈整數轉換,我可以在媒體播放器中嘗試。 –
以及做int會是'NSString * string = @「5」; int value = [string intValue];' – CaptJak