字符串格式化

3

我制作了一个定时器,它输出的时间格式如下:

0:1, 0:2, 0:3 ... 0:10 ...
string.Format("{0}:{1}", hours, minutes);

但是我希望输出如下:
00:01, 00:02, 00:03
8个回答

4
0:1, 0:2, 0:3 ... 0:10 ...
string.Format("{0:00}:{1:00}", hours, minutes);

将输出
00:01, 00:02, 00:03

2

1
如果您有一个 DateTime 对象,您可以这样说:
DateTime dt = DateTime.Now;
// string.Format("{0:hh:mm}", dt);

如果你有数字,请使用:

string.Format("{0:00}:{1:00}", hours, minutes);

0

0
string.Format("{0,2}:{1,2}", hours, minutes);

0
在C#中,如果你想要有前导零,可以使用格式化函数:
intValue.ToString("00.##");

所以,如果你想要有前导零的分钟和秒数,你可以使用:

string.Format("{0}:{1}", hours.ToString("00.##"), minutes.ToString("00.##"));

如果您的计时器使用TimeSpan对象,您可以使用TimeSpan的格式。
myTimeSpan.Format("hh:mm");

0
你可以在TimeSpan或DateTime对象上使用toString方法,或者将你的代码更改为以下内容。
string.Format("{0:00}:{1:00}");

0

我不知道是否有一种简单而正确的方法来做到这一点,但无论如何你都可以写出来。

  String.Format("{0}:{1}",hours < 10 ? ("0" + hours) : hours,  minutes < 10 ? ("0" + minutes) : minutes);

希望这有所帮助... :)


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接