友..
我的系统日期格式为MM / dd / yyyy。
我想获得格式dd / MM / yyyy。我正在使用folling代码
DateTime dt = DateTime.Parse(stdate.Value.ToString("dd/MM/yyyy"));
并以日期时间格式(dd / MM / yyyy)传递dt以查询
此代码为单个数字日期提供正确的输出(如1/6/2023)// stdate is DateTimePicker
但是以两位数字命名(如28/8/2013)
这里有什么问题......朋友们帮助我..
注意 - 我已将datetimepicker格式设置为自定义,而fustomFormat是dd-MM-yyyy ..来自DateTimepicker属性。 所以我的datetimepicker控件显示值01/08 / 2013 ..但datetimepicker的属性中的实际值是8/1/2013(2013年8月28日....属性8/28/2013)
答案 0 :(得分:0)
刚做
DateTime dt = dateTimePicker1.Value;
string str = dt.ToString("dd/MM/yyyy");
将以您需要的格式
为您提供所需的日期如果您以字符串格式获取日期并想将其转换为DateTime,则可以使用:
DateTime dt;
CultureInfo enUS = new CultureInfo("en-US");
string dateString = "05/01/2009";
if (DateTime.TryParseExact(dateString, "dd/MM/yyyy", enUS,
DateTimeStyles.None, out dt))
{
dateTimePicker1.Value = dt;
}
答案 1 :(得分:0)
发生错误是因为虽然您已将stdate.Value
格式化为所需的字符串格式,但DateTime.Parse
仍然使用系统格式MM/dd/yyyy
。
虽然DateTime.TryParse
可能有助于您想要做的事情,但结果将是dt == stdate.Value
,这会让您回到原点。
您可能想要做的是仅在您想要将其放入查询时格式化stdate.Value
,我认为这需要字符串输入