Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/318.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 日期时间格式问题_C#_Datetime_Datetime Conversion - Fatal编程技术网

C# 日期时间格式问题

C# 日期时间格式问题,c#,datetime,datetime-conversion,C#,Datetime,Datetime Conversion,我有一根像下面这样的线 1970年1月1日12:00:00上午 我希望它是yyyy-MM-dd格式(在本例中为1970-01-01) 我的解析代码是 var actualDate = DateTime.ParseExact(actualValue,"MM/dd/yyyy HH:mm:ss tt",CultureInfo.InvariantCulture).ToString("yyyy-MM-dd"); 但是我不断得到错误,字符串没有被识别为有效的日期时间。 我查看了我的变量actualValu

我有一根像下面这样的线

1970年1月1日12:00:00上午

我希望它是yyyy-MM-dd格式(在本例中为1970-01-01) 我的解析代码是

var actualDate = DateTime.ParseExact(actualValue,"MM/dd/yyyy HH:mm:ss tt",CultureInfo.InvariantCulture).ToString("yyyy-MM-dd");
但是我不断得到错误,字符串没有被识别为有效的日期时间。
我查看了我的变量actualValue,它的类型是DateTime,所以我认为问题在于格式MM/dd/yyyy HH:MM:ss tt,这有什么问题?

首先,不应该在数据库中以文本形式存储或获取日期

但是,对于您的特定问题,
MM
dd
是月和日的两位数。显然,您的日期文本不使用仅两位数的变体,因此请使用
M
d
。而且,
HH
是24小时制。使用
tt
,即AM/PM,意味着没有24小时的时钟,因此您可能希望使用
hh


有关更多信息,请查看自定义日期/时间格式。

如果
actualValue
DateTime
,则您得到的代码甚至不应该编译,也不需要解析它。目前你的问题很不清楚。但基本上,您不应该从数据库开始以字符串形式读取该值。很抱歉,它不是从DB读取的,它是字符串。我已经编辑了这个问题。即使这样也不能解决如果实际值的类型是DateTime,代码不编译的问题。好的,我之前试过M和d,但都不起作用。但是除了M和d之外,使用hh代替hh是可行的。12小时对24小时的格式很好!