c#日期时间选择器转换

本文关键字:转换 选择器 时间 日期 | 更新日期: 2023-09-27 18:15:11

我正在尝试制作一个程序,将在数据库中存储dd/MM/yyyy格式的日期。我谷歌了一下,看到了同样的结果。我试着编码,但它不工作。输入日期的模式是dd/MM/yy,使用datetimepicker的自定义格式。在稍微操作字符串以删除填充零之后,返回的字符串是MM/dd/yyyy。

我的代码

System.Windows.Forms.MessageBox.Show(Cdate.Text + "CDATE"); //shows dd/MM/yyyy
            string[] datecut = new string[4];
            datecut = Cdate.Text.Split('/');
            DateTime cdate = DateTime.ParseExact(datecut[0].PadLeft(2, '0') + '/' + datecut[1].PadLeft(2, '0') + '/' + datecut[2], "dd/MM/yyyy", null);
            EC.setCDate(cdate.ToShortDateString());
            System.Windows.Forms.MessageBox.Show(cdate.ToShortDateString()); //shows MM/dd/yyyy
            datecut = Cdate.Text.Split('/');
            DateTime date = DateTime.ParseExact(datecut[0].PadLeft(2, '0') + '/' + datecut[1].PadLeft(2, '0') + '/' + datecut[2], "dd/MM/yyyy", null);
            EC.setDate(date.ToShortDateString());
            System.Windows.Forms.MessageBox.Show(date.ToShortDateString());

c#日期时间选择器转换

以dd/MM/yyyy的格式在数据库中存储日期

No, No, No 。您的数据库将具有专门用于日期字段的数据类型。你应该用那种类型。此日期类型以任何人类可读的格式存储日期值。它将以紧凑的二进制格式存储日期。为了方便,您的查询或数据库工具只显示一个人类可读的格式。

如果你能给出一个例子,说明你把日期保存到数据库的位置,以及你使用的是哪种数据库,我们可以告诉你如何在不格式化日期的情况下做到这一点。

你试过了吗:

String Date = DateTime.Now.ToString("日/月/年");

通常使用DateTime。方法来解析字符串。(http://msdn.microsoft.com/en-us/library/system.datetime.tryparse.aspx)一旦你有一个字符串作为DateTime对象,你可以打印它回来,但你喜欢使用DateTime. tostring () (http://msdn.microsoft.com/en-us/library/zdtaw1bw.aspx)

听起来您有一个日期选择器,并且您正在尝试使用所选日期的字符串表示形式。如果是那样的话,我就不会那样做了。日期选择器有一个名为value的属性,它是一个表示所选日期的DateTime Object,您可以将其直接传递给EC。setDate方法如下。

EC.setDate(dateTimePicker.Value.ToString("dd/MM/yyyy"));