我的字符串格式为2008年1月1日
我怎样才能将它解析为DateTime?
谢谢!
答案 0 :(得分:5)
格式字符串“MMMM d,yyyy”应该有效。示例代码:
using System;
using System.Globalization;
class Test
{
static void Main()
{
string text = "January 1, 2008";
DateTime dt = DateTime.ParseExact(text, "MMMM d, yyyy",
CultureInfo.InvariantCulture);
Console.WriteLine(dt);
}
}
请注意,文化在这里很重要,以匹配正确的月份名称。 (我通常会发现不变的文化很方便,但只适用于符合要求的情况。)
答案 1 :(得分:1)
一方面,您可以使用简单的方法:
string dateString = "January 1, 2008";
DateTime parseValue = DateTime.Parse(dateString);
或确切的,扩展的方式:
CultureInfo englishCulture = CultureInfo.CreateSpecificCulture("en-EN");
string dateString = "January 1, 2008";
string formatString = "MMMM d, yyyy";
DateTime extendedWay = DateTime.ParseExact(
dateString,
formatString,
englishCulture.DateTimeFormat);