更改c#中的日期时间格式
本文关键字:时间 格式 日期 更改 | 更新日期: 2023-09-27 18:14:42
嘿,我正在使用c#中的Randomdate函数(它是由另一个人在StackOverflow上编写的-谢谢:))无论如何,它返回两个日期之间的随机日期,但在这种格式
代码:
public static DateTime RandomDay()
{
DateTime start = new DateTime(2006, 1, 1);
DateTime end = new DateTime(2013, 12, 31);
Random gen = new Random();
int range = (end - start).Days;
return start.AddDays(gen.Next(range));
}
但是,它返回的日期格式类似于2008-10-25,但是,我希望日期像这样表示:
25.10.2008:00:00.000
这可能吗?由于
在日期上调用ToString()
并传递所需的格式。
var formatted = date.ToString("dd.MM.yyyy:HH:mm.fff");
查看MSDN文档页面:
自定义日期和时间格式
string formattedDate = DateTime.Now.ToString("dd.MM.yyyy:HH:mm:ss:fff");
你可以试试这个吗:
string urdate = RandomDay().ToString("dd.MM.yyyy:HH:mm.fff");
日期时间没有格式。相反,它们将日期和时间存储为从公元0001年1月1日午夜12:00开始的100纳秒刻度数,存储在类型为long
的字段中。
当您将它们转换为字符串时,则该字符串不具有格式。
所以你需要做的是指定你想要的格式作为一个参数来调用DateTime.ToString()
。
在您的示例中,正确的格式是由"dd.MM.yyyy:HH:mm.fff"
指定的,因此您可以通过以下操作实现您想要的:
DateTime myDate = RandomDay();
string myFormattedDateString = myDate.ToString("dd.MM.yyyy:HH:mm.fff");
查看DateTime.ToString()
请参阅此处了解有关自定义DateTime格式字符串的信息,例如在此回答中使用的字符串
你可以试试这个
string urdate = RandomDay().Now.ToShortDateString();
您可以提供一个格式字符串,例如:
RandomDay().ToString("dd.MM.yyyy:hh.mm.sss")
参见自定义日期时间格式字符串