将字符串dd / mm转换为datetime

时间:2017-01-21 10:39:48

标签: c#

Converting a String to DateTime

正如上面的链接所说,如果我有完整的dd / mm / yyyy,我可以进行转换,但我只有dd / mm 而不是年份字段

我已经通过将日期更改为mm / dd格式并使用Convert.ToDateTime(date)来实现它。所以请帮助。

3 个答案:

答案 0 :(得分:2)

您可以解析该字符串。请记住,月份部分是MM而不是mm(分钟)

string data = "01/01";
DateTime dt;
DateTime.TryParseExact(data, "dd/MM", CultureInfo.CurrentCulture, DateTimeStyles.None, out dt);
Console.WriteLine(dt.ToLongDateString());

当然,假设缺少的一年是当年

答案 1 :(得分:0)

您可以使用this source了解有关解析自定义日期的说明符的详情。

放置您的字符串变量而不是CustomDate字段。

DateTime d = DateTime.ParseExact(CustomDate, "dd/MM",System.Globalization.CultureInfo.CurrentCulture);

答案 2 :(得分:0)

我会使用函数DateTime.TryParseExact,因为你可以很容易地在If - else结构中使用它

private DateTime date;
private myString = "23/04";

if (DateTime.TryParseExact(myString, "dd/MM", CultureInfo.InvariantCulture, DateTimeStyles.None, out date))
{
    myDate = date;
}
else
{
    //do nothing
}

使用此功能,您可以在解析字符串时捕获错误。