我正在尝试将日期时间格式转换为MM / dd / yyyy,但我得到的结果为“05/14/14”,我期待它是“05/14/2014”。
此代码有什么问题?
string input = Datetime.Now.ToString("MM/dd/yyyy");
DateTime d;
if (DateTime.TryParseExact(input, "MM/dd/yyyy", CultureInfo.InvariantCulture, DateTimeStyles.None, out d))
{
// use d
}
更新 当我改为“MM / dd / yyyy”时,我的电脑中的短日期设置为“MM / dd / yy”,它有效。 什么是解决方案,以便日期时间应该显示,无论电脑设置如何。
答案 0 :(得分:2)
string input = Datetime.Now.ToString("MM/dd/yyyy");
应为DateTime
。
通过此更改,代码运行正常并提供所需的输出。无需更改PC中的日期格式。 也是为什么要做所有这些事情,而这可以通过一行代码来实现:
var shortDate = DateTime.Now.ToString("d");
无论您提到的PC日期格式如何,这都会将以下输出显示为“MM / dd / yyyy”。