如何将日期时间转换为标准格式

本文关键字:标准 格式 转换 时间 日期 | 更新日期: 2023-09-27 17:59:01

我从数据库中获取正确格式的日期,但获取不正确格式的时间,即19/10/2010 4:45:00 AM。我希望我的时间是hh:mm:ss。我只有一个小时,即h。追加0似乎不是一个好的解决方案——以期望的格式(即hh:mm:ss)解析它是一种什么形式?

如何将日期时间转换为标准格式

你尝试过吗:

yourDate.ToString("dd-MM-yyyy HH:mm:ss");

大写的"HH"表示24小时格式。。。

使用dateTime.ToString("g");//g-通用日期时间格式
自定义日期和时间格式字符串

或者使用一些自定义格式:dateTime.ToString("dd/MM/yyyy HH:mm:ss");
标准日期和时间格式字符串

将正确的格式传递给DateTime.ToString方法,如下所示:

dateValue.ToString("dd/MM/yyyy hh:mm:ss tt");

如果使用Sql Server,则使用

Convert(getdate(),varchar(15),109)

详细信息可在此处找到SQL Server日期时间格式

我不确定你的问题是什么。你是如何从数据库中获取格式不正确的日期的?您是否收到已格式化的string

如果是这样,那么您可以使用以下方法将其解析为有效的DateTime

DateTime d = 
    DateTime.ParseExact(date, "dd/MM/yyyy h:mm:ss tt",CultureInfo.InvariantCulture);

如果您已经有了DateTime,那么您可以使用其他答案中已经提出的任何方法将其格式化为string

您收到的日期格式没有任何"不当"之处,这只是您数据库的默认格式(我相信如果合适,dba可以更改)

您希望更改渲染的格式。您可以使用DateTime.ToString(string Format) 进行此操作

 DateTime dt = DateTime.Parse("19/10/2010 4:45:00 AM");
 dt.ToString("hh:mm:ss");

解析DateTime对象读取现有格式以设置其值的方式,ToString是渲染它的方式。

yourDate.ToString("dd-MM-yyyy-HH:MM:ss");

用这个就行了。