从CSV值中提取并验证日期

时间:2015-11-19 02:07:03

标签: c# datetime

有效日期为: 2016年1月1日,2016年2月29日。

日期无效: 1-JU-2016,1 / 10/2016等。

我使用TryParseExtract来获取日期,但它无效。

正在测试的样本数据 20-FEB-2016

提取日期输出: {1/01/0001 12:00:00 AM}

我试图确保csv元素与此日期格式匹配。

            string format = "DD-MMM-YYYY";
            DateTime dateTime;

            if (fileStillValid == true)
            {
                while (currentLine < lines.Length)
                {
                    string[] current = lines[currentLine].Split(',');
                    if (!rcCodeRegex.IsMatch(current[0]))
                    {
                        fileStillValid = false;
                        invalidRedemptionCode = current[0];
                        break;
                    }
                    if (DateTime.TryParseExact(current[1], format, CultureInfo.InvariantCulture,
                                       DateTimeStyles.None, out dateTime))
                    {
                        // do something here. 
                    }
                    else
                    {
                        fileStillValid = false;                       
                        break;
                    }

                    currentLine++;
                }
            }

1 个答案:

答案 0 :(得分:2)

你的格式错了......信件案件很重要。试试这个:

string format = "d-MMM-yyyy";