2015-10-31 16 views
5

Hier sind einige Float-Wert:führende Nullen für Schwimmer in Swift

5.3 
23.67 
0.23 

und ich möchte, dass sie

05.30 
23.67 
00.23 

sein String(format: "%.2f", floatVar) Mit 2 Ziffer nach dem Komma machen kann, aber nicht Null hinzufügen, bevor es.

Ich habe auch versucht String(format: "%04.2f", floatVar) als here vorschlagen, aber es zeigt nur gleiches wie %.2f

Gibt es eine saubere Art und Weise diese Bibliotheken innerhalb der Swift-Standard zu tun?

+0

Try versuchen ' "% *. 2f"'. Ich erinnere mich daran, dass in C. – Arc676

+0

@ Arc676 es nichts zurückgegeben hat :( – Arefly

+0

'*' bedeutet, dass ein weiteres Argument als Integer anstelle von '*' verwendet wird. Es funktioniert auch nicht besser als '% 5.2f' oder schlimmer, und es ist eine Art von nutzlosem Vorschlag ohne eine Erklärung dessen, was es tut .. –

Antwort

13

Try this:

String(format: "%05.2f", floatChar) 

Von this documentation: 0 Pad bedeutet es, mit führender Null. 5 ist die minimale Breite, einschließlich das Punktzeichen.

+0

Was ist, wenn minimale Breite> 10 wie '15' ist? – Arefly

0

Oder ich kann mächtiger api von NumberFormatter

let numberFormatter = NumberFormatter() 
// more settings 
numberFormatter.minimumIntegerDigits = 2 
Verwandte Themen