使用 .ToString() 在 C# 中格式化十进制字符串

Format Decimal String in C# using .ToString()

我有一个以小数形式存储的金额 result:

例如。 decimal result = 1935698.27;

如何使用 .ToString() 将其格式化为 String,使其看起来像这样:R 1 935 698,27

需要做以下事情:

此格式根据南非兰特货币格式。

这是我的:

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

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

非常感谢任何帮助!

这是内置的 - 只需使用南非文化和 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