繁体   English   中英

将datetime转换为yyyy / MM / dd

[英]convert datetime to yyyy/MM/dd

如何将datetime对象转换为yyyy / MM / dd格式? 我在尝试这个:

DateTime selectedDate =Convert.ToDateTime( Calendar1.SelectedDate.ToShortDateString());
selectedDate = DateTime.ParseExact(selectedDate, "yyyy/MM/dd", CultureInfo.InvariantCulture);

但是我收到以下错误:

'System.DateTime.ParseExact(string,string,System.IFormatProvider)'的最佳重载方法匹配有一些无效的参数

要么

参数'1':无法从'System.DateTime'转换为'string'

DateTime没有固有格式 - 只有内部表示。

当您想要显示 DateTime实例的值时,格式化将起作用:

string formatted = DateTime.ToString("yyyy/MM/dd", CultureInfo.InvariantCulture);

上面formatted字符串将包含所需格式的DateTime实例的值。

当您要将其转换为字符串或在UI /其他地方显示时,日期格式是有意义的。

如果Calendar1.SelectedDate属于DateTime类型:

string date = Calendar1.SelectedDate.ToString(
                                      "yyyy/MM/dd", 
                                       CultureInfo.InvariantCulture);

如果Calendar1.SelectedDatestring类型:

string date = DateTime.ParseExact(
                          Calendar1.SelectedDate, 
                         "yyyy/MM/dd", 
                          CultureInfo.InvariantCulture);

使用Calendar1.SelectedDate.ToString("yyyy/MM/dd");

ParseExact将字符串转换为日期时间,因此

selectedDate = DateTime.ParseExact("2012/02/29", "yyyy/MM/dd", CultureInfo.InvariantCulture);

会工作。 不确定为什么要将datetime转换为datetime?

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM