4

我有一个程序,它处理日志文本文件,检索日期时间,将日期时间转换为系统的 DateTime 格式。

但是,该程序似乎无法识别所选的各种日期时间范围。程序应检索用户选择的日期和时间之间的记录。

问题可能是由于代码的顺序造成的?

有人可以就代码提供建议吗?谢谢!

代码:

            String timeDate2 = result1.ToString("MM/dd/yyyy HH:mm:ss");

            Console.WriteLine("The last written time to the registry was : " + timeDate2);

            TimeSpan.TryParse("12/02/2010 16:04:17", out t1);
            TimeSpan.TryParse("12/09/2010 05:12:42", out t2);
            TimeSpan.TryParse(timeDate2, out t3);

            if ((t3 >= t1 && t3 <= t2) == true)    // Is t3 between t1 and t2?
            {
                foreach (String k in lines.Skip(12))
                {
                    Console.WriteLine(k);
                }
             x = 1;
            }

            else
            {
                x = 2;
            }

            Console.WriteLine("============================================================");

        }

        if (x == 2)
        {
            Console.WriteLine("There is no selected days within the log files!");
        }
4

1 回答 1

1
TimeSpan.TryParse("12/02/2010 16:04:17", out t1);
TimeSpan.TryParse("12/09/2010 05:12:42", out t2);
TimeSpan.TryParse(timeDate2, out t3);

TimeSpan 通常没有日期,因为它是一个时间跨度,因此有多少天、多少小时和多少分钟。不是约会。TimeSpan 是日期之间的时间定义。 有关 MSDN 页面的更多信息

将其修复为DateTime.TryParse

(并检查解析后 t1/t2/t3 的值是什么)

于 2010-12-14T09:37:32.143 回答