我有一个 NSString 包含一个非常大的数字。我需要将其转换为 NSNumber,但它总是以科学格式返回 NSNumber,这不好(我在谓词中使用数字来搜索具有此 MPMediaEntityPropertyPersistentID 的音乐曲目)。
NSNumberFormatter *numberFormatter = [[NSNumberFormatter alloc] init];
[numberFormatter setNumberStyle:NSNumberFormatterDecimalStyle];
NSString *str = @"14881035034468747982";
DLog(@"before: %@", str);
NSNumber *nmb = [numberFormatter numberFromString:str];
DLog(@"after: %@", nmb);
印刷:
<AppDelegate.m:199> before: 14881035034468747982
<AppDelegate.m:201> after: 1.488103503446875e+19
如果我使用此号码搜索 iPod 库,则不会返回任何内容。