2015-10-28 37 views
2

我必须通过使用货币的字符串格式从雷转换为欧元。 我的方法是:转换器转换成欧元c#

public static void ConvertFromRonEur() 
    { 
     //string amount = string.Format("{0:C}"); 
     double result; 
     Console.WriteLine("Lei: "); 
     double quantity; 
     double euro = 0.22D; 
     quantity = double.Parse(Console.ReadLine()); 
     result = quantity * euro; 
     Console.WriteLine(("{0:C} Euro"), result); 
    } 

当我运行的结果是:

Lei: 
    10 
    $2,20 Euro 

我怎么能只有2,20欧元的结果,但使用的字符串格式化货币?谢谢。

回答

9

你需要指定文化,到的String.Format

喜欢的东西

//use any european culture 
var cultureInfo = CultureInfo.GetCultureInfo("fr-FR"); 
Console.WriteLine(String.Format(cultureInfo, "{0:C} Euro", result)); 

另一种

Console.WriteLine(string.Format("€{0:N2} Euro", result)); 

格式为2位小数(由€前缀)

+0

它显示我2,20? 。所以它不承认它? – Nelly

+0

哪种方法?第一或第二? – Alex

+0

他们两个。第一个告诉我:“2.20欧元”和第二个“2.20欧元”。 – Nelly

1

来自:MSDN

“C”或“c”:货币结果:货币值。支持:全部 数字类型。精度说明符:小数位数。默认 精度说明符:由 NumberFormatInfo.CurrencyDecimalDigits定义。

更多信息:货币(“C”)格式说明符。

123.456 ("C", en-US) -> $123.46 
123.456 ("C", fr-FR) -> 123,46 € 
123.456 ("C", ja-JP) -> ¥123 
-123.456 ("C3", en-US) -> ($123.456) 
-123.456 ("C3", fr-FR) -> -123,456 € 
-123.456 ("C3", ja-JP) -> -¥123.456