Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/25.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# 如何使用Directory.GetFiles仅获取gif类型(或任何其他类型)?_C#_.net - Fatal编程技术网

C# 如何使用Directory.GetFiles仅获取gif类型(或任何其他类型)?

C# 如何使用Directory.GetFiles仅获取gif类型(或任何其他类型)?,c#,.net,C#,.net,我正在尝试按扩展名(特别是“.gif”)筛选文件,但由于某种原因,GetFiles方法找不到任何文件(即使文件夹中确实存在该类型的文件) 此代码为我提供了所有文件的列表 private void displaylastanimatedgif() { var directory = new DirectoryInfo(animatedgifsdirectory); var myFile = (from f in directory.G

我正在尝试按扩展名(特别是“.gif”)筛选文件,但由于某种原因,
GetFiles
方法找不到任何文件(即使文件夹中确实存在该类型的文件)

此代码为我提供了所有文件的列表

private void displaylastanimatedgif()
        {
            var directory = new DirectoryInfo(animatedgifsdirectory);
            var myFile = (from f in directory.GetFiles()
                          orderby f.LastWriteTime descending
                          select f).First();
            if (myFile != null)
                pictureBoxImage(myFile.FullName);
            listBox1.Items.Add(outputfile);
        }
如果我将过滤器添加到
GetFiles()
目录.GetFiles(“*.gif”)中,我将得到异常:

序列不包含任何元素

您有3个版本的“GetFiles”方法。其中2个包括一个过滤器选项:

您使用的版本接受一个“路径”。不是过滤器

  • 选项1有两个参数:

    var files = Directory.GetFiles(animatedgifsdirectory, "*.gif");
    
  • 选项2实例方法将过滤器作为单个参数:

    var directory = new DirectoryInfo(animatedgifsdirectory);
    var files = directory.GetFiles(animatedgifsdirectory, "*.gif");
    
您有3个版本的“GetFiles”方法。其中2个包括一个过滤器选项:

您使用的版本接受一个“路径”。不是过滤器

  • 选项1有两个参数:

    var files = Directory.GetFiles(animatedgifsdirectory, "*.gif");
    
  • 选项2实例方法将过滤器作为单个参数:

    var directory = new DirectoryInfo(animatedgifsdirectory);
    var files = directory.GetFiles(animatedgifsdirectory, "*.gif");
    
GetFiles
上使用重载:

System.IO.Directory.GetFiles(@"C:\Windows", "*.gif");
GetFiles
上使用重载:

System.IO.Directory.GetFiles(@"C:\Windows", "*.gif");