Ich bin nicht in der Lage, länger NSString
zu NSNumber
zuverlässig zu konvertieren. Insbesondere konvertiere ich MPMediaEntityPropertyPersistentID
als eine Zeichenfolge zu einem NSNumber
Manchmal funktioniert es, normalerweise nicht.Convert long NSString zu NSNumber
Conversion-Code:
NSString *keke = [jsonArray objectForKey:@"next"];
NSNumberFormatter * f = [[NSNumberFormatter alloc] init];
[f setNumberStyle:NSNumberFormatterDecimalStyle];
NSNumber *persistentIDasNumber = [f numberFromString:keke];
Hier ist ein Beispiel für einen erfolgreiche Zeichenfolge Anzahl Umwandlung:
String: 3813955856659208324
Number: 3813955856659208324
Und hier ist eine erfolglose Umwandlung:
String: 12790162104953153719
Number:1.279016210495315e+19
Es ist in der Nähe, aber Was passiert am Ende? Ist es zu groß?
Muss es NSNummer sein? oder kann es ein int oder unsigned int oder ein float sein? – CaptJak
Ich denke, es muss eine 'NSNummer' sein, da die Media Player-Funktion das übernimmt. Wenn Sie jedoch Integer-Conversions posten können, kann ich diese im Media Player ausprobieren. –
gut int zu tun wäre 'NSString * string = @" 5 "; int value = [string intValue]; ' – CaptJak