¿Cómo imprime los ceros a la izquierda para un flotador usando el tipo NSString
?Objective-C cómo imprimir el 0 para un flotador?
Input: 3.14
Desired output: 03.1
Using format @"%02.1f"
Output: 3.1
¿Cómo imprime los ceros a la izquierda para un flotador usando el tipo NSString
?Objective-C cómo imprimir el 0 para un flotador?
Input: 3.14
Desired output: 03.1
Using format @"%02.1f"
Output: 3.1
Quiere @"04.1f"
. El 4 es el total ancho.
Como puede ver en el documentation, las cadenas de formato se ajustan al IEEE printf specification.
La cadena de formato que ha especificado, se desglosa del siguiente modo:
0 - Pad con ceros.
2 - Todo el valor del formato resultante tendrá un ancho mínimo de 2.
.1 - Precisión de 1 dígito después del punto decimal.
Por alguna razón, no puede establecer el ancho pre-decimal en los números de flotación (tal vez es un error que debe informar). Esto significa que tendrá que dividir el número en el formato decimal cada forma que desee y luego combinarlos en una cadena (@"%i.%i", preDec, postDec
).
No es un error. Ya sea que sea lo que alguien quiere o no, así es como se definen las cadenas de formato para que funcionen. – imaginaryboy
Todavía parece extraño que no sea consistente entre los tipos. Quizás un error de 'Solicitud de función' ... – user427302
Es consistente. Para todos los tipos, el '2' que utilizó especifica el ancho mínimo del valor formateado resultante. – imaginaryboy
Whoohoo !!! ¡Gracias, imaginario! Leí mal los documentos. % 04.1f funcionó! – Dan
El _total width_ ** incluye ** el punto decimal, simplemente diciendo –