我有一些字符串:
string amount = "123456";
string amount2 = "123456.78";
我希望输出为:
amount: 123.456,00
amount2: 123.456,78
我已经看了here,但这对我的例子不起作用。
答案 0 :(得分:9)
您可以使用:
decimal.Parse(amount).ToString("N")
这假设您的文化使用您想要的格式。您可以明确指定文化,例如:
decimal.Parse(amount, CultureInfo.InvariantCulture)
.ToString("N", new CultureInfo("de-DE"))
为文化"德国(德国)" ("de-DE"
)。编辑以指定Parse
方法的格式提供程序。
答案 1 :(得分:4)
好的,我解决了这个问题:
string.Format("{0:0,0.00}", Convert.ToDouble(amount))
答案 2 :(得分:1)
另外,以下内容还可以轻松实现用户自定义对我的应用程序的要求。
string groupSeperator = ".";
string decimalSeperator = ",";
int decimalDigits= 2;
amount.ToString("N", new NumberFormatInfo {NumberDecimalSeparator = decimalSeperator , NumberDecimalDigits = decimalDigits, NumberGroupSeparator = groupSeperator});