我的字符串就像这样“21.05.2013 00:00:00”
但我想这样:“05/21/2013”; 所以我用格式
String.Format(“{0:M d yy}”,myObject.StartAt.ToString());
但不是这个“05/21/2013”它产生了这个 “05.21.2013 00:00:00”
编辑区----------
我试过下面的代码,但它仍然给出错误的格式,它仍然给出“05.20.2013”而不是“05/20/2013”;
DateTime arrivalDate = DateTime.ParseExact(hotelSearchModel.StartAt.ToString(), "dd.MM.yyyy hh:mm:ss", CultureInfo.InvariantCulture);
DateTime departureDate = DateTime.ParseExact(hotelSearchModel.StartAt.ToString(), "dd.MM.yyyy hh:mm:ss", CultureInfo.InvariantCulture);
request.arrivalDate = arrivalDate.ToString("MM/dd/yyyy");
request.departureDate = departureDate.ToString("MM/dd/yyyy");
答案 0 :(得分:2)
StartAt
是字符串还是日期时间?如果它是一个字符串,您需要将其转换为DateTime才能使格式化工作。此外,您需要将格式设置模式更改为 MM / dd / yyyy 以获取 05/21/2013 :
DateTime dt = DateTime.ParseExact(myObject.StartAt, "dd.MM.yyyy hh:mm:ss", CultureInfo.InvariantCulture);
string s = dt.ToString("MM/dd/yyyy");