如何将31/03/2011 00:00:00日期格式转换为C#2011 2011年3月31日

时间:2011-02-09 09:05:58

标签: c#

我的结果中有以下日期格式,我正在使用C#2.0

ExpiryDate = "31/03/2011 00:00:00";
spnExpiryDate.InnerHtml = ExpiryDate;

现在,当我要在HTML中显示它时,它应该转换为31 Mar 2011格式。

请建议!

6 个答案:

答案 0 :(得分:4)

首先,将字符串解析为DateTime,然后使用DateTime的{​​{1}}格式化它:

ToString

答案 1 :(得分:3)

这应该这样做:

var culture = System.Globalization.CultureInfo.CreateSpecificCulture("en-GB");
spnExpiryDate.InnerHtml = DateTime.Parse(ExpiryDate, culture).ToString("d MMM yyyy");

如果服务器的默认文化已经是dd / mm / yyyy,则可以省略文化位。

答案 2 :(得分:2)

首先解析日期然后格式化您的需求:

DateTime dt = DateTime.Parse("31/03/2011 00:00:00");
 .InnerHtml =  String.Format("{0:dd MMM yyyy}", dt);

当我需要格式化日期时,我几乎每次都使用好link。 另请检查this aswer关于日期时间格式的扩展方法。

答案 3 :(得分:1)

首先将您的字符串解析为DateTime

var date = DateTime.Parse("31/03/2011 00:00:00", "dd/mm/yyyy HH:mm:ss");

然后用户方法“ToString”

date.ToString("dd MMM yyyy")

答案 4 :(得分:0)

你没有说出如何输出它,但基本上你想在调用ToString时提供格式:

aTextBox.Text = myDate.ToString("dd MMMM yyyy");

答案 5 :(得分:0)

另一种方式是

CultureInfo.CurrentCulture.DateTimeFormat.GetMonthName(DateTime.Now.Month);

为您提供月份名称