将DateTime转换为c#中的MM/dd/yyyy

本文关键字:MM dd yyyy 中的 DateTime 转换 | 更新日期: 2023-09-27 18:13:20

我正在调用给我日期时间为"dd-MM-yyyy 00:00:00"的web服务。现在我想把它保存到数据库中。因此,为了保存日期,我必须将日期格式转换为MM/dd/yyyy。我已经尝试了下面的代码转换日期时间格式,但没有为我工作

1. DateTime.ParseExact(string, "MM/dd/yyyy", culture);
2. Convert.ToDateTime(string).ToString("MM/dd/yyyy",CultureInfo.InvariantCulture);
有谁能帮我一下吗?

将DateTime转换为c#中的MM/dd/yyyy

DateTime类型没有任何特定的格式,可以直接保存到数据库中。但是如果你想用特定的格式字符串那么你可以用

//input date string as dd-MM-yyyy HH:mm:ss format
string date = "17-10-2016 20:00:00";
//dt will be DateTime type
DateTime dt = DateTime.ParseExact(date, "dd-MM-yyyy HH:mm:ss", CultureInfo.InvariantCulture);
//s will be MM/dd/yyyy format string
string s = dt.ToString("MM/dd/yyyy");

如果你输入date作为DateTime类型那么你可以直接得到格式化字符串

string s1 = date.ToString("MM/dd/yyyy");

DateTime是一个结构体,它没有任何关于"format"之类的信息。

如果您想要创建DateTime值的字符串表示,则仅使用格式。你所说的"nothing works for me"的意思可能是你的调试器总是使用相同的格式来显示DateTime的值。

如何将值插入数据库取决于数据库系统和所使用的连接类型。通常情况下,您应该使用参数化查询,您可以将DateTime原样传递,一切都会正常工作。

如果您必须将DateTime值直接放入查询字符串中,您可以简单地使用myDate.ToString("MM/dd/yyyy",CultureInfo.InvariantCulture);。但我绝对肯定您使用的数据库连接支持参数化查询,直接接受您的DateTime,我不建议将值转换回字符串表示形式。

var dateTime = "28-08-1993 12:12:12";
DateTime dt = DateTime.ParseExact(dateTime, "dd-MM-yyyy hh:mm:ss", CultureInfo.InvariantCulture);
var convertedDate = dt.ToString("MM/dd/yyyy");
Console.WriteLine(convertedDate);
DateTime date=DateTime.Now;
string result =  date.ToString("MM/dd/yyyy");

您也可以分别捕获日/月/年....

string formattedDate= Convert.ToDateTime(your_date_object).Day.ToString() + "/" + Convert.ToDateTime(your_date_object).Month.ToString() + "/" + Convert.ToDateTime(your_date_object).Year.ToString();