[英]Parse a string to datetime format
我在这里有一个小问题,想知道我的错误在哪里以及如何纠正它。
string preConvDATE = monthCombobox2.Text + " " + datecombobox2.Text + ","+ "0000";
//lets say the comboboxes contain something like this "January 1";
DateTime DT = DateTime.ParseExact(preConvDATE, "MMMM d, yyyy 00:00:00", System.Globalization.CultureInfo.InvariantCulture);
string strDate = DT.ToString("yyyy-mm-dd");
try
{
//code that inserts strDate to a column in Mysql DB
}
catch
{
//msg
}
为什么是“ 0000”呢? 因为我确实打算只存储月份和日期,但是意识到我可以将其存储为带有一年的日期时间格式,然后在查看表时只使用串联的Mysql MONTH()和DATE()函数从monthCombobox2
和datecombobox2
查看存储的月份和日期。
我也尝试过:
Convert.ToDateTime()
但仍然行不通。
如何正确解析MMMM d,yyyy
日期格式,以便我可以再次将其转换为yyyy-mm-dd
并将其存储为datetime
格式在数据库中? 非常感谢 :)
如我所见,您正在使用文本框来捕获月份和日期的值,而不是使用下拉列表,该下拉列表将显示月份名称,但返回值,如01表示一月,依此类推。 您可以轻松格式化日期格式。 您不希望保存年份,可以设置当前年份,而不是设置0000。 现在的问题是您将无法确定确切的日期(例如星期日,星期一等)。
string preConvDATE = monthCombobox2.Text + "/" + datecombobox2.Text+"/" + DateTime.Now.Year.ToString();
DateTime DT = DateTime.ParseExact(preConvDATE, "MM/dd/yyyy", System.Globalization.CultureInfo.InvariantCulture);
string strDate = DT.ToString("yyyy-MM-dd");
我希望这能解决您的问题。 编码愉快!
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.