当前位置: 代码迷 >> C# >> C#用system.io.directory.getfiles查找文件出错的有关问题
  详细解决方案

C#用system.io.directory.getfiles查找文件出错的有关问题

热度:9922   发布时间:2013-02-25 00:00:00.0
C#用system.io.directory.getfiles查找文件出错的问题
偶然会发生"The path is not of a legal form”,平率还相当高,不知道什么,好好的路径,怎么会不合法呢?

程序的一个线程会监视一个目录,包括所有子目录,找个一个最新的文件,然后进行相关操作,如果发现这个最新的文件持续几分钟没有更新,就重新搜索一遍那个目录,再找一个最新的文件进行操作,如此循环。
搜索文件的函数如下:


        //读取当面目录中最新的MDB文件
        private string getlastWriteMdbfile(string path)
        {
            string rfn = "";
            try
            {
                DateTime lstdt = new DateTime();
                foreach (string f in System.IO.Directory.GetFiles(path, "*.mdb", System.IO.SearchOption.AllDirectories))
                {
                    System.IO.FileInfo fi = new System.IO.FileInfo(f);
                    if (rfn == "")
                    {
                        lstdt = fi.LastWriteTime;
                        rfn = f;
                    }
                    else
                    {
                        if (fi.LastWriteTime > lstdt)
                        {
                            lstdt = fi.LastWriteTime;
                            rfn = f;
                        }
                    }
                }
                addlog ("获得文件名---"+rfn);
            }
            catch (Exception ex)
            {
                addlog("发生错误---" + ex.Message);
  相关解决方案