如何将字符串“ 06/22/2019 00:00:00”转换为有效的DateTime类型,格式为2019/06/22,不包括小时,分钟和秒

时间:2019-06-27 09:53:03

标签: c# asp.net-mvc

我正在做一个asp.net mvc项目,我需要将字符串“ 06/22/2019 00:00:00”转换为有效的DateTime类型,格式为2019/06/22,不包括小时以及分钟和秒

4 个答案:

答案 0 :(得分:1)

您可以使用 DateTime.ParseExact ,下面是一个示例:

http://net-informations.com/q/faq/stringdate.html

最后,它应该看起来像这样:

string s = "06/22/2019 00:00:00";
DateTime myDate = DateTime.ParseExact(s, "MM/dd/yyyy HH:mm:ss",System.Globalization.CultureInfo.InvariantCulture);
Debug.WriteLine(myDate.ToString("MM/dd/yyyy"));

答案 1 :(得分:0)

您可以这样做:

var dateString = "06/22/2019 00:00:00";
var datePart = dateString.Split(' ')[0];
var date = DateTime.Parse(datePart);

尽管请记住,DateTime仍将是该时间的默认值(上午12:00),但是如果您只想从对象中获取Date部分,请使用date.Date返回具有默认时间的实例(如前所述)。

答案 2 :(得分:0)

将字符串转换为DateTime对象,然后仅显示日期部分,可以使用ToShortDateString,如下所示:

var myDateTime = DateTime.Parse( "06/22/2019 00:00:00") //presumably use a variable here instead.
var date = myDateTime.ToShortDateString();

要显示此内容,可以使用CultureInfo部分完成,如下所示:https://docs.microsoft.com/en-us/dotnet/api/system.datetime.toshortdatestring?view=netframework-4.8

答案 3 :(得分:0)

DateTime包含默认的Time,即使您访问DateTime.Date。您可以通过将Date转换为字符串来实现日期格式。

类似

    DateTime myDate = DateTime.ParseExact("06/22/2019 00:00:00", "MM/dd/yyyy HH:mm:ss", System.Globalization.CultureInfo.InvariantCulture);
    string dateInFormat = $"{myDate.Year}/{myDate.Month}/{myDate.Day}";

POC:.net Fiddle