Mediante string.Format() podemos dar formato a nuestro número dando un formato predefinido o utilizando una expresión.
1 2 3 |
decimal precio=1234.345m; |
Formatos predefinidos c:moneda, g:general, n:númerico, marca los miles.
1 2 3 |
resultado = string.Format("{0:c}", precio); //1.234,35 € resultado = string.Format("{0:g}", precio);//1234,345 resultado = string.Format("{0:n}", precio);//1.234,35 |
Es equivalente a:
1 2 3 4 5 6 7 8 9 10 11 12 13 |
//Por defecto C y N tienen dos decimales precio.ToString("C"); //1.234,35 € precio.ToString("G"); //1234,345 precio.ToString("N"); //1.234,35 //Se puede definir el número de decimales en C y N precio.ToString("C1"); //1.234,3 € precio.ToString("N0"); //1.234 //En el caso de G se refiere al número de dígitos del número precio.ToString("G5"); //1234,3 |
Formatear un número con una expresión:
Carácter 0 se reemplaza por el número correspondiente, si no hay pone un cero.
Carácter # se reemplaza por el número correspondiente, si no hay no pone nada.
Carácter . separador decimal.
Carácter ; permite diferenciar el formato para número positivos;negativos;0
1 2 3 4 5 6 7 8 9 10 11 12 |
resultado = string.Format("{0:0.0000}", precio);//1234,3450 resultado = string.Format("{0:00000.##}", precio);//01234,35 resultado = string.Format("{0:####.##}", precio);//1234,35 resultado = string.Format("{0:####}", precio);//1234 resultado = string.Format("{0:#-#-#-#}", precio);//1-2-3-4 resultado = string.Format("{0:###.00;(-###.00);Cero patatero}", precio);//1234,35 precio = -1234.35m; resultado = string.Format("{0:###.00;(-###.00);Cero patatero}", precio);//(-1234,35) precio =0m; resultado = string.Format("{0:###.00;(-###.00);Cero patatero}", precio);//Cero patatero |
Excelente, muy bueno, gracias…