0

我想将 datetime.now 格式(“dd/mm/yyyy hh:mm:ss AM/PM”)转换为美国时间格式,即“mm-dd-yyyy hh:mm:ss AM/PM”。此外,我希望转换后的格式为日期时间而不是字符串,因为它存储在数据库中,并且数据库中的字段是日期时间格式,所以它不会采用字符串。请建议....

4

3 回答 3

6

DateTime没有格式DateTime.Now没有格式,如果您进行任何类型的转换,如果您有 a DateTime,则没有格式。格式的概念仅在您转换为字符串或从字符串转换时适用 - 并且DateTime.Now是 a DateTime,而不是 a string

DateTime.Now只需使用(或)将值插入数据库DateTime.UtcNow,您将保留重要部分的数据。

您应该只在实际需要时执行字符串转换——此时您可以使用自定义日期DateTime.TryParseExact/时间格式字符串。(用于用户输入;对于真正应该有效的机器输入,使用.)DateTime.ToStringTryParseExactDateTime.ParseExact

请注意,使用具有不变文化的自定义日期/时间模式,或具有“真实”文化(例如用户文化)的标准日期/时间模式通常是一个好主意。

于 2013-01-29T07:10:59.997 回答
0
DateTime usDateTimeFormat = DateTime.Parse(DateTime.Now , 
System.Globalization.CultureInfo.GetCultureInfo("en-us"));
于 2013-01-29T07:27:31.910 回答
0

尝试这个。标准日期和时间格式字符串

DateTime.Now.ToString("g",CultureInfo.CreateSpecificCulture("en-us"))
于 2013-01-29T07:18:39.230 回答