C#中格式化浮点数实现如01:24的时间格式显示问题
实现两位补零的时间格式显示
你的问题出在ToString("F2")只会给小数部分补两位零,但整数部分是个位数时不会自动补零。可以直接用自定义格式字符串一步到位,无需先转F2再替换:
timeInGame.ToString("00:00");
这个格式字符串的作用:
00(前半段):强制整数部分显示两位,个位数时前面补零(比如1会变成01)::直接作为分隔符00(后半段):强制小数部分保留两位,不足时末尾补零(比如0.24会显示为24,0.5会显示为50)
如果timeInGame代表的是总秒数(比如84秒对应1分24秒),需要先拆分出分钟和秒的数值再格式化:
int minutes = (int)Math.Floor(timeInGame / 60); int seconds = (int)Math.Floor(timeInGame % 60); string formattedTime = $"{minutes:D2}:{seconds:D2}";
这里的D2表示十进制数字强制显示两位,不足补零。
内容的提问来源于stack exchange,提问作者SengunSipahi
相关产品推荐
相关产品推荐

