如何处理来自Excel文件的dateformat并使用C#将其转换为MM/DD/YYYY?

Rit*_*ita 3 c# asp.net datetime c#-4.0

我有Excel文件中的日期.到目前为止,要求是,它可以格式为YYYY-MM-DD.

所以我编写了以下代码将其转换为MM/dd/yyyy:

DateTime excelDate = DateTime.ParseExact(value, 
                                         "yyyy-MM-dd", 
                                         CultureInfo.InvariantCulture, 
                                         DateTimeStyles.None);

value = value != "" ? excelDate.ToString("MM/dd/yyyy") : value;
Run Code Online (Sandbox Code Playgroud)

但现在的要求是:它可以采用任何格式,如 YYYY-MM-DDMM/DD/YYYYYYYYMMDDMM-DD-YY.Wonderin ghow以简短的方式处理这些并将其转换为MM/DD/YYYY?

Ode*_*ded 8

有一个过载ParseExact该需要和阵列格式串.

var formats = new string[] {"yyyy-MM-dd", "MM/dd/yyyy", "yyyyMMdd", "MM-dd-yy"};
DateTime excelDate = DateTime.ParseExact(value, 
                                         formats, 
                                         CultureInfo.InvariantCulture, 
                                         DateTimeStyles.None);
Run Code Online (Sandbox Code Playgroud)