为什么日期格式在添加月份时会错过匹配

时间:2015-03-30 05:38:53

标签: c# string datetime

当我将当前日期28-Mar-2015格式化为txtActDate然后再添加月份时,我就不明白为什么它会以28-Mar-15格式获取。

DateTime dateTime = DateTime.UtcNow.Date;
txtActDate.Text = dateTime.ToString("dd/MMM/yyyy");
DateTime firstDate = DateTime.ParseExact(txtActDate.Text, "dd/MMM/yyyy", null);
firstDate = firstDate.AddMonths(0);
txtAccExp.Text = firstDate.ToShortDateString();

1 个答案:

答案 0 :(得分:4)

几乎可以肯定,因为你要求它以短格式给你日期:

txtAccExp.Text = firstDate.ToShortDateString();

您可以通过以下方式从您的文化中获取当前的短格式:

using System.Globalization;
:
var dtfi = CultureInfo.CurrentCulture.DateTimeFormat;
Console.WriteLine(dtfi.ShortDatePattern);

在修复它方面,您可能会使用与首先填充文本字段相同的方法,以确保它是所需的格式:

txtActExp.Text = firstDate.ToString("dd/MMM/yyyy");