2016-10-02 61 views
1

我具有存储在一个十进制result的量:格式小数字符串使用的ToString()

EG。 decimal result = 1935698.27;

我如何使用.ToString(),使它看起来像这样格式化为StringR 1 935 698,27

它需要做到以下几点:

  • 添加R(注意空间),以String的前面
  • 添加空格将3中的值分组(即R 00 000 000 000,00
  • 替换.,

这种格式根据南非兰特货币格式。

这是我有:

decimal result = 1935698.27; 
string strResult = result.ToString("What should I put here?"); // Need help 

// Expected strResult = "R 1 935 698,27" 

任何帮助,非常感谢!

回答

4

这是建立在 - 只使用南非的文化和currency format specifier

var result = 1935698.27m; 
var ci = new CultureInfo("en-ZA"); 
var strResult = result.ToString("C", ci); 
// strResult is R 1 935 698,27 

请参阅this fiddle

+0

这不会在'R'和金额之间增加一个空格。 –

+0

它确实 - 看到小提琴。我将输出复制/粘贴到答案中。 –

+0

嗯,一定是我身边的其他东西,谢谢。 –