我正在获取 DateTime 格式的日期。 例如2015 年 3 月 26 日上午 12:00:00 我想将其转换为日期时间 (YYYY-MM-DD)。
我的输出应该在 DateTime 中:
DateTime obj = 2015-03-26
我试过了,
string value = "11/12/2009";
IFormatProvider culture = new CultureInfo("en-US", true);
DateTime dateValue = DateTime.ParseExact(value, "yyyy-MM-dd", culture);
但无济于事。
提前致谢
最佳答案
您似乎认为 DateTime
有 一种格式。它不会 - 只不过 int
既不是十进制,也不是十六进制,也不是二进制 - 但可以转换为任何这些文本表示形式。
听起来您应该只对传入数据使用 DateTime.Parse
(除非您知道预期的确切 格式,在这种情况下请指定),保持尽可能长时间将结果作为 DateTime
,然后在需要时将 ToString
与自定义格式字符串一起使用以对其进行格式化。 (不要将其转换为文本,直到您确实需要虽然......尽可能避免转换,因为每个转换都是潜在的错误来源。)
DateTime date = DateTime.Parse(value, culture);
...
// Lots of other code
...
string isoDate = date.ToString("yyyy-MM-dd", CultureInfo.InvariantCulture);
关于c# - 以 yyyy-MM-dd 格式获取日期 c#,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29147071/