C# 日期时间格式更改
本文关键字:格式 时间 日期 | 更新日期: 2023-09-27 17:56:38
我想将datetime.now格式"dd/mm/yyyy hh:mm:ss AM/PM"转换为美国时间格式,即"mm-dd-yyyy hh:mm:ss AM/PM"。此外,我希望转换后的格式为日期时间而不是字符串,因为相同的格式存储在数据库中,并且数据库中的字段是日期时间格式,因此它不会采用字符串。请建议....
DateTime
值没有格式。 DateTime.Now
没有格式,如果你进行任何类型的转换,如果你有DateTime
,就没有格式。格式的概念仅适用于与字符串转换或从字符串转换时 - DateTime.Now
是一个DateTime
,而不是一个string
。
只需使用 DateTime.Now
(或DateTime.UtcNow
)将值插入数据库,即可保留重要部分的数据。
您应该只在实际需要时才执行字符串转换 - 此时您可以使用DateTime.TryParseExact
并使用自定义日期/时间格式字符串DateTime.ToString
。(使用 TryParseExact
进行用户输入;对于真正应该有效的机器输入,请使用 DateTime.ParseExact
。
请注意,通常最好将自定义日期/时间模式与固定区域性一起使用,或将标准日期/时间模式与"真实"区域性(例如用户的区域性)一起使用。
试试这个。标准日期和时间格式字符串
DateTime.Now.ToString("g",CultureInfo.CreateSpecificCulture("en-us"))
DateTime usDateTimeFormat = DateTime.Parse(DateTime.Now ,
System.Globalization.CultureInfo.GetCultureInfo("en-us"));