将字符串解析为DateTime,格式为“MMMM yyyy”

时间:2017-08-31 13:31:54

标签: c# date parsing datetime

我正在尝试将包含一个月和一年(例如"April 2017")的字符串解析为DateTime

var foo = DateTime.ParseExact(dateToParse, "MMMM yyyy", null, DateTimeStyles.None);

但结果的格式为04/01/2017 00:00:00而不是April 2017。我错过了什么吗?

2 个答案:

答案 0 :(得分:0)

"我正在尝试解析字符串" 并将字符串解析为DateTime而没有问题。

DateTime有一个值,没有格式,如果你想再次使用另一个代表DateTime的sting,你必须使用DateTime.ToString

例如:

DateTime dt = DateTime.ParseExact("April 2017", "MMMM yyyy", null, DateTimeStyles.None);
string monthAndYear = dt.ToString("MMMM yyyy"); // same as your original string "April 2017"

答案 1 :(得分:0)

04/01/2017 00:00:00是格式化的输出,其中默认格式化您解析的DateTime实例的值。

DateTime没有隐式格式。

如果您想以您提到的形式显示它,则需要执行foo.ToString("MMMM yyyy")

之类的操作