将日期格式转换为 raddatepicker 值的 YYYY-MM-DD
Posted
技术标签:
【中文标题】将日期格式转换为 raddatepicker 值的 YYYY-MM-DD【英文标题】:convert date format to YYYY-MM-DD of raddatepicker value 【发布时间】:2015-07-15 05:50:41 【问题描述】:我正在尝试将 raddatepicker 的值转换为 YYYY-MM-DD 格式。但我得到了例外,
orderDate.SelectedDate = DateTime.Now.Date; // Date = 15/7/2015 12:00:00 AM
string orderDate_ = orderDate.SelectedDate.Value..ToShortDateString(); // 15/7/2015
IFormatProvider culture = new CultureInfo("en-US", true);
DateTime dateVal = DateTime.ParseExact(orderDate_, "yyyy-MM-dd", culture); // geting exception [System.FormatException] = "String was not recognized as a valid DateTime."
获取异常
[System.FormatException] = "String was not recognized as a valid DateTime."
请建议如何将日期格式转换为 yyyy-MM-dd。
【问题讨论】:
你试过用yyyy-MMM-dd
吗?
【参考方案1】:
你必须给出正确的格式,你需要dd-MM-yyyy
而不是yyyy-M-dd
,你可以在这篇文章中找到更多Custom Date and Time Format Strings
DateTime dateVal = DateTime.ParseExact(orderDate_, "dd-M-yyyy", CultureInfo.InvariantCulture);
【讨论】:
如果月份大于 9 怎么办?我的意思是 10 月、11 月和 12 月 格式字符串“M”用于1-12,在我的回答中提到的链接msdn.microsoft.com/en-us/library/8kb3ddd4(v=vs.110).aspx【参考方案2】:由于orderDate_
看起来像15/7/2015
,您需要改用dd/M/yyyy
格式。
DateTime dateVal = DateTime.ParseExact(orderDate_, "dd/M/yyyy", culture);
但我认为这是不必要的,因为您的 orderDate.SelectedDate
已经是 DateTime.
【讨论】:
如果月份大于 9 怎么办?我的意思是 10 月、11 月和 12 月 @user4221591M
specifier 接受 1
到 12
。这意味着它很好。以上是关于将日期格式转换为 raddatepicker 值的 YYYY-MM-DD的主要内容,如果未能解决你的问题,请参考以下文章
Telerik 中的日期格式问题:RadDatePicker
将具有日期和纪元格式值的字符串列转换为 postgresql/Tableau prep 中的日期列
使用 Javascript 将日期设置为 raddatepicker