C#中的日期时间转换

时间:2012-02-23 06:14:47

标签: c# c#-4.0

我收到美国标准格式mm/dd/yy的日期。

我只能以yyyy-MM-dd

的格式上传到MySQL

如何在C#中将mm/dd/yy格式转换为yyyy-MM-dd格式?

4 个答案:

答案 0 :(得分:4)

可以解析它然后格式化它。 (DateTime.ParseExactDateTime.ToString

但是,不应重新格式化MySQL的好处,并且它表明您的数据库访问不合适:

  • 您的数据库列 应该是DATETIME列或类似的东西,如果您在其中存储日期
  • 您的数据库代码不应将值包含在字符串中。它应该作为带有DateTime
  • 参数传递

因此,使用参数化SQL,您只需要解析(例如使用DateTime.ParseExact),然后将其作为DateTime传递:

DateTime date = DateTime.ParseExact(text, "mm/dd/yy",
                                    CultureInfo.InvariantCulture);
command.Parameters.Add("@Foo", MySqlDbType.DateTime).Value = date;

答案 1 :(得分:1)

http://msdn.microsoft.com/en-us/library/8kb3ddd4.aspx ...请点击此处。您可以在C#中转换日期格式

答案 2 :(得分:1)

您可以使用MySQL STR_TO_DATE(str,format)功能。
或者您可以在c#

中使用string formatting

答案 3 :(得分:1)

这样的事情应该有效:

DateTime dt = Convert.ToDateTime(dateString);
string newDateString = dt.ToString("yyyy-MM-dd");