c# - mostrar - ¿Cómo limitar un número decimal?
formato decimal datagridview c# (6)
Limitar la precisión de un número de punto flotante es un concepto de SQL. Decimal en csharp solo significa que recordará la precisión asignada. Puede redondear a tres lugares decimales antes de asignar. IE, Math.Round()
.
Posible duplicado:
Cómo formatear un decimal
¿Cómo puedo limitar mi número decimal para obtener solo 3 dígitos después del punto?
e.g 2.774
Para recuperar el decimal, use Math.Round
con el segundo parámetro que especifica el número de puntos decimales.
decimal d = 54.9700M;
decimal f = (Math.Round(d, 2)); // 54.97
Para obtener una representación en cadena del número, use .ToString()
especifica los puntos decimales como N3. Donde 3 es el punto decimal.
decimal d = 54.9700M;
string s = number.ToString("N3"); // "54.97"
Parte de mi respuesta es la respuesta, otra parte es solo un punto interesante:
A menudo quiero ver la variable como un prop/field
. Así que crea un extension method
para resolver mi problema:
Tensao es solo un Enum que tiene un valor relacionado.
public static class TensaoExtensions {
public static double TensaoNominal(this Tensao tensao) {
return Math.Round((double.Parse(EnumMapper.Convert(typeof(Tensao),
tensao.ToString()))) * 1000 / Math.Sqrt(3), 3);
}
}
Supongo que realmente quiere decir formatearlo para salida:
Console.WriteLine("{0:0.###}", value);
Usa Math.Round
para redondearlo a 3 lugares decimales.