2010-06-21 13 views
5

Estoy usando el siguiente código para mostrar el porcentaje usando String.Format pero también quiero limitar el número de cifras significativas a 2, las dos parecen no funcionar bien juntas. ¿Cómo puedo hacer que los dos trabajen juntos de manera adecuada?% de formato de cadena con cifras significativas

String.Format("% Length <= 0.5: {0:0%}", m_SelectedReport.m_QLT_1); 

Así que lo que quiero es idealmente algo como esto

double d1 = 1234; 
double d2 = 0.1234; 

//Output of d1 -> 12 
//Output of d2 -> 0.12 
+0

no debería utilizar un '.' en lugar del ':' que estás usando. Algo así como: {# 0.00%} – Kyra

+1

@kyra: el primer '0' es el índice de campo. –

+1

sus ejemplos d1/d2 no parecen lógicos. ¿Cuándo quieres que ocurra un DivBy100? –

Respuesta

11

Se puede controlar el número de dígitos antes y después del punto decimal (separador). Controlar el número total de dígitos (antes de y después) va a requerir algo de programación.

El formato {0:0.00%} se debe trabajar, dando salidas como 0,12, 1,23 y 12,34

+1

+1 por ser la única respuesta realmente correcta a la pregunta. –

2
double d = 25.13645; 
Console.WriteLine(d.ToString("##.00 %")); 
+1

¿Por qué el '#' al frente? Y '##. 00' es lo mismo que '# .00'. –

0

Esta entrada de blog es un pequeño gran hoja de trucos para tener a mano cuando se trata de cadenas de formato a una variedad de formatos.

eliminado

Edición

El enlace fue eliminado por Google advirtió temporalmente que el sitio (o sitio relacionado) pueden haber sido la difusión de software malicioso. Ahora está fuera de la lista y ya no se reporta como problemático (aunque todavía era problemático). Google "SteveX String Formatting" encontrará el resultado de búsqueda y puede visitarlo a su discreción.

+2

-1. Chrome me dice que este sitio puede dañar mi computadora. http://safebrowsing.clients.google.com/safebrowsing/diagnostic?site=http://blog.stevex.net/string-formatting-in-csharp/&client=googlechrome&hl=en-US –

+0

'Advertencia: visitando este sitio puede dañar su computadora! ' Malware ??? – Rippo

+0

Lo siento chicos. Hasta el 1 de junio, este sitio no fue bloqueado y la guía fue muy útil para el formato de cadenas en C#. Intentaré obtener el contenido en otro lugar o intentaré informar al propietario que su sitio se ha visto comprometido. –