我正在从telerik日期选择器中选择日期,并希望以24小时格式选择所选日期和当前系统时间,并希望这样的日期:
对于Ex:Current Date = dd/mm/yy HH:Minutes:Seconds
21/1/2016 14:48:21
这是我的代码:
DateTime dt = DateTime.ParseExact(Datepicker1.SelectedDate.Value.ToShortDateString(), "dd/MM/yyyy", CultureInfo.InvariantCulture);//Error:String was not recognized as a valid DateTime.
Datepicker1.SelectedDate.Value= {1/21/2016 12:00:00 AM}
Datepicker1.SelectedDate.Value.ToShortDateString()=1/21/2016
错误:字符串未被识别为 Datetime.ParseExact
上的有效日期时间。
答案 0 :(得分:1)
更改ParseExact
中的格式
"dd/MM/yyyy"
到
"M/d/yyyy" or "M/d/yyyy h:m:s tt" //the first one use .ToShortDateString(), the second one for 1/21/2016 12:00:00 AM
第一个只关注像21/12/1997
除了处理时间信息之外,第二个需要注意12/21/1997
,2/21/1997
,12/2/1997
和2/1/1997
另请注意,您可以考虑使用多种格式(以防万一):"d/M/yyyy H:m:s"
,"d/M/yyyy h:m:s tt"
来处理交换日期和月份以及{{1}时的情况}}
答案 1 :(得分:1)
@yourDateTime.FormattedReviewDate.ToString("MMM dd,yyyy")
您甚至可以为dateTime为格式化显示添加一个简单属性:
public string FormattedReviewDate
{
get { return ReviewDate.ToString("MMM dd,yyyy"); }
}
注意:提供您所需的格式
答案 2 :(得分:1)
您不需要解析任何。
您的Datepicker1.SelectedDate.Value
已经 DateTime
,只需将此值分配给您的dt
变量。
DateTime dt = Datepicker1.SelectedDate.Value;
如果您想根据格式获取字符串表示,只需使用正确格式的ToString
方法。
string formattedDate = dt.ToString("dd/M/yyyy HH:mm:ss", CultureInfo.InvariantCulture);
将21/1/2016 14:48:21
作为string
返回。
此外,如果您希望将1/21/2016
作为字符串,只需将格式更改为M/dd/yyyy
;
string formattedDate = dt.ToString("M/dd/yyyy", CultureInfo.InvariantCulture);