Objective-C how to print out leading 0 for a float?
How do you print out leading开发者_JAVA技巧 zeros for a float using the NSString
type?
Input: 3.14
Desired output: 03.1
Using format @"%02.1f"
Output: 3.1
You want @"04.1f"
. The 4 is the total width.
As you can see from the documentation, the format strings conform to the IEEE printf specification.
The format string you've specified breaks down as follows:
0 -- Pad with zeros.
2 -- The entire resulting formatted value will have a minimum width of 2.
.1 -- Precision of 1 digit following the decimal point.
For some reason you can't set the pre-decimal width on float numbers (maybe it's a bug you should report). This means you will have to split the number at the decimal format each the way you want and then merge them into one string (@"%i.%i", preDec, postDec
).
精彩评论