2012-09-25 33 views
0

我需要將小數格式化爲次要貨幣例如10.00應該是1000.將小數格式化爲次要貨幣

decimal currency = 10.00m; 
System.Console.WriteLine(currency.ToString("######")); 

產生10,我如何獲得小數點加入到那?

+7

'* 100'? – zerkms

+0

不錯的一個它在這裏遲到我應該雖然那 – Burt

+0

你可以把它作爲答案,所以我可以標記它嗎? – Burt

回答

1

的解決方案是爲剛剛

* 100 
0

簡單我想創建一個像這樣的擴展方法將總是產生預期的結果,所需數量的小數位數:

public static class DecimalExtension 
{ 
    public static string FormatAsMinorCurrency(this decimal value) { 
     var numberFormat = (NumberFormatInfo)CultureInfo.CurrentCulture.NumberFormat.Clone(); 
     numberFormat.CurrencyDecimalDigits = 2; 
     numberFormat.CurrencyDecimalSeparator = "."; 
     numberFormat.CurrencySymbol = ""; 
     numberFormat.CurrencyGroupSeparator = ""; 
     return value.ToString("c", numberFormat).Replace(".", ""); 
    } 
} 

結果:

1.FormatAsMinorCurrency() 
100 

10.FormatAsMinorCurrency() 
1000 

1000000.34102350915091M.FormatAsMinorCurrency() 
100000034