我怎样才能转换'11-09-2012 5:08:31 PM'
为'09/11/2012'
?(从dd-MM-yyyy HH:mm:SS
到MM/dd/yyyy
)。
日期是11 September 2012
。
或者有什么方法可以在 C# 中转换它?但在 C# 中,我只想要日期而不是字符串。
我怎样才能转换'11-09-2012 5:08:31 PM'
为'09/11/2012'
?(从dd-MM-yyyy HH:mm:SS
到MM/dd/yyyy
)。
日期是11 September 2012
。
或者有什么方法可以在 C# 中转换它?但在 C# 中,我只想要日期而不是字符串。
使用SQL Server查询:
SELECT CONVERT(DATETIME, '11-09-2012 5:08:31 PM', 101);
这将在MM/dd/yyyy
.For 中进行转换。有关更多信息,请参阅CAST 和 CONVERT (Transact-SQL)以及如何从字符串转换为日期时间?
使用C#进行转换。
你可以这样做:
string myDate = Convert.ToDateTime("11-09-2012 5:08:31 PM").ToString("MM/dd/yyyy"
,CultureInfo.InvariantCulture);
但是由于您不想导致结果String
,因此可以使用DateTime.ParseExact
方法。
DateTime parsedDate = DateTime.ParseExact("11-09-2012 5:08:31 PM",
"MM/dd/yyyy",
CultureInfo.InvariantCulture);
SQL 服务器:
对 [MM/DD/YYYY] 格式执行以下操作:
SELECT CONVERT(VARCHAR(10), CAST('11-09-2012 5:08:31 PM' AS DATETIME), 101) AS [MM/DD/YYYY]
同样,如果你想转换为 [DD/MM/YYYY] 格式,你可以这样做
SELECT CONVERT(VARCHAR(10), CAST('11-09-2012 5:08:31 PM' AS DATETIME), 103) AS [DD/MM/YYYY]
C#
在 C# 中,您只需这样做:
string formattedDt= Convert.ToDateTime("11-09-2012 5:08:31 PM")
.ToString("MM/dd/yyyy",CultureInfo.InvariantCulture);
在 c# 中,您应该能够使用以下方法:
DateTime.ToShortDateString();
甚至:
DateTime.Now.Date -- will produce just the date
来自 MSDN 的注释:
ToShortDateString 方法返回的字符串区分区域性。它反映了当前区域性的 DateTimeFormatInfo 对象定义的模式。例如,对于 en-US 文化,标准的短日期模式是“M/d/yyyy”;对于 de-DE 文化,它是“dd.MM.yyyy”;对于 ja-JP 文化,它是“yyyy/M/d”。特定计算机上的特定格式字符串也可以自定义,使其不同于标准的短日期格式字符串。
string date = "11-09-2012 5:08:31 PM";
string newDate = DateTime.Parse(date).ToString("dd/MM/yyyy");
这是使用日期时间解析的示例代码,有关更多信息,您可以访问链接C-sharp 日期时间格式
string inputString = "11/08/2012";
DateTime dt = DateTime.MinValue;
try {
dt = DateTime.Parse(inputString);
}
catch (Exception ex) {
// handle the exception however you like.
return;
}
string formattedDate = String.Format("{0:MMM d, yyyy}", dt);