Ala*_*mas 1 .net c# string-formatting
给定一个十进制值,我怎么能在一个字符串添加一个前导零只有当值小于1?
例如.
.20 -> "0.20" - Add a leading 0
1.20 -> "1.20" - Value remains the same
Run Code Online (Sandbox Code Playgroud)
小数位前的值可以是任意长度,小数位后的值只能是2位数.货币.这是用String.Format()实现的吗?或者我应该依赖基本的if语句?
String.Format()文档对我来说相当混乱.
我已经检查了其他几个问题/答案,似乎无法找到我正在寻找的东西.
编辑:正如几个答案所提到的,这种前导零加法应该是在值上调用的ToString()方法的默认行为.无论出于何种原因,在我的情况下都没有发生,所以String.Format()在我的情况下是必要的.
可以使用string.format():
string.Format("{0:0.00}", 0.2) // 0.20
string.Format("{0:0.00}", 1.20) // 1.20
Run Code Online (Sandbox Code Playgroud)
您还可以对变量本身使用ToString():
var d1 = 0.2;
var d2 = 1.20;
Console.WriteLine(d1.ToString("0.00")); // 0.20
Console.WriteLine(d2.ToString("0.00")); // 1.20
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1091 次 |
| 最近记录: |