从可移动设备中检索图像

时间:2017-06-28 14:00:13

标签: c# winforms

我正在尝试在加载程序时从可移动设备中检索图像。当我运行程序时,我希望它自动检查任何可移动设备,并将任何目录中找到的任何图像文件检索到图像列表框。我的代码如下:

        private void DemoForm_Load(object sender, EventArgs e)
    {

        System.IO.DriveInfo[] drives = System.IO.DriveInfo.GetDrives();
        foreach (System.IO.DriveInfo drive in drives)
        {
            if (drive.DriveType == DriveType.Removable)
            {
                MessageBox.Show("Found removable drive " + drive.Name.ToString());


                //Loop for all removable drives
                Console.WriteLine(drive.Name.ToString());

                string[] filePaths = Directory.GetFiles(@"E:\", "*.jpg,*.jpeg",  //Find all .jpeg and .jpg on this drive & add.
                                      SearchOption.AllDirectories);

                imageListView1.Items.Add(filePaths.ToString());

            }
        }
    }

目前搜索E:\驱动器的硬编码因为我不知道如何搜索任何可移动设备。此代码返回一个名为“System.String []”的空白缩略图。任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:0)

在数组上调用.ToString()只返回数组的类型,在本例中为System.String[]。尝试循环遍历filePaths数组中的字符串,并将其添加到imageListView1.Items

对于硬编码的E:\,您已经拥有foreach循环中的可移除drive。致电drive.Name获取驱动器名称,而不是E:\