2010-11-16 21 views
6

He una cadena que tiene este aspecto 512.3 hay una manera de añadir un cero al final lo que parece que este 512.30cero final en decimal

Solo para aclarar (lo siento, no sabía que en diferentes formas, etc. .)

Mi cadena es una cantidad que se pasa por lo cambia todo el tiempo solo me falta el cero final en cantidades como 512.3, 512.4, etc. 512.5 como algunos de mis cantidades pasará valores como 512.33 y 512.44 etc.

Gracias

Jamie

+0

¿Qué idioma está utilizando? –

+0

¿Puede darnos un poco más de contexto? ¿Cuál es la situación que necesita el 0 adicional? Hay como 10 maneras de hacer esto y cualquiera de ellas será apropiado en diferentes situaciones. –

+0

@NickLarsen o hágalo de la manera que anoto a continuación cada vez y luego nunca tendrá que preocuparse por las variaciones de la cultura. – jcolebrand

Respuesta

5
float.Parse("512.3").ToString("0.00"); 

Se le daría el número de dos dígitos decimales.

+0

Lo siento, vio que ahora está usando VB.NET, debería ser la misma sintaxis. –

+0

si es una cadena que ya está analizando un flotador parece mucho trabajo ... –

+0

Querrá dejar el punto y coma al final, ya que están trabajando en VB.NET y no en C# :) – Delebrin

0

Formato (5.12, "0.00") esto lo formateará como dos decimales.

+0

Pero esto no es cultura invariante. – jcolebrand

0

Usted querrá utilizar String.Format

decimal your_number = 1452.66m; 
string str = String.Format("{0:C}", your_number); 
3

Vas a querer utilizar String.Format o alguna derivación del mismo, y la format string se verá como

myString = String.Format("{0:F2}",myObject); 

También tenga en cuenta que las cadenas de formato se pueden usar en el método .ToString("F2") (note que incluí la cadena de formato F2 allí.

Vea los enlaces de MSDN arriba para una explicación más completa y definitiva.

0

Si se trata de VB.NET parece que la solución más sencilla sería:.

FormatNumber("512.3", 2) 

cual se devolvía 512,30

0

Single.Parse ("512.3") ToString ("0.00") 'VB Versión