正如我在google中看到的那样,有许多字符串实现为int或decimal ...但不是字符串。
例如:
decimal d1 = 32221.0210m;
Console.WriteLine(d1.ToString("#,###.00"));
这有效,但问题是我有一个字符串,我不想把它转换为数字。
string str = "32221.0210";
我希望它是:
str = "32,221.02";
是否可以(没有施法)?
对于那些询问是否有任何理由不投的人:是的。我正在使用接收字符串的基础结构。基础设施团队不希望将其转换为十进制,因为他们也可能收到其他值,如日期等... 在更糟糕的情况下,有可能TryParse十进制,所以我们肯定知道它会工作。但是现在,我们正在尝试将字符串解析为字符串,如上所述。
提前致谢:)
答案 0 :(得分:0)
需要一个十进制类型的临时变量:
decimal d;
string str = decimal.TryParse("32221.0210", out d)? string.Format("{0:#,##0.00}", d):string.Empty;