假设我的 ID 号以:911125 开头...
91 = 1991(年)
11 = 十一月(月)
25 = 日(日)
我怎样才能得到这个格式:1991 年 11 月 25 日?
编辑:这是我尝试过的,但我知道这是错误的:
DateTime dt = DateTime.ParseExact(dateOfBirth, "yyMMdd", CultureInfo.InvariantCulture);
假设我的 ID 号以:911125 开头...
91 = 1991(年)
11 = 十一月(月)
25 = 日(日)
我怎样才能得到这个格式:1991 年 11 月 25 日?
编辑:这是我尝试过的,但我知道这是错误的:
DateTime dt = DateTime.ParseExact(dateOfBirth, "yyMMdd", CultureInfo.InvariantCulture);
您需要将其解析为DateTime
对象(DateTime.TryParseExact),然后您可以将其格式化为:
string str = "911125";
DateTime dt;
if (DateTime.TryParseExact(str
, "yyMMdd"
, CultureInfo.InvariantCulture
, DateTimeStyles.None
, out dt))
{
Console.WriteLine(dt.ToString("dd MMMM yyyy"));
}
else
{
Console.WriteLine("Invalid date string");
}
你会得到:
25 November 1991
编辑:
您的代码应该可以正常工作,它正在解析Date
,但您没有格式化它以进行显示。
string formattedDate = dt.ToString("dd MMMM yyyy");
我使用的原因DateTime.TryParseExact
是,如果解析失败,它不会抛出异常。DateTime.ParseExact
会做同样的工作,但如果传递给它的字符串与提供的格式不匹配,它会抛出异常。