On 11 Oct 2014, at 13:44, Greg Parker <gpar...@apple.com> wrote: > >> On Oct 10, 2014, at 11:03 PM, Gerriet M. Denkmann <gerr...@mdenkmann.de> >> wrote: >> >> On iOS 8.0: >> >> UInt64 sum = 16494631536958186120UL; >> NSString *sumString = [ NSNumberFormatter >> localizedStringFromNumber: @(sum) >> >> numberStyle: NSNumberFormatterDecimalStyle >> ]; >> results in sumString = -1,952,112,536,751,365,496, which seems not quite >> right. >> >> How can I convince NSNumberFormatter that it should print unsigned integers? > > You can't. Sorry. > > NSNumberFormatter is built atop ICU. ICU's API can handle signed 64-bit > integers but not unsigned 64-bit integers.
There is a (sort of) work-around: double dSum = sum; NSString *stringWithDigitsLost = [ NSNumberFormatter localizedStringFromNumber: @(dSum) numberStyle: NSNumberFormatterDecimalStyle ]; stringWithDigitsLost = 16,494,631,536,958,200,000 correctString: = 16 494 631 536 958 186 120 Kind regards, Gerriet. _______________________________________________ Cocoa-dev mailing list (Cocoa-dev@lists.apple.com) Please do not post admin requests or moderator comments to the list. Contact the moderators at cocoa-dev-admins(at)lists.apple.com Help/Unsubscribe/Update your Subscription: https://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com This email sent to arch...@mail-archive.com