我正在尝试在加载程序时从可移动设备中检索图像。当我运行程序时,我希望它自动检查任何可移动设备,并将任何目录中找到的任何图像文件检索到图像列表框。我的代码如下:
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 []”的空白缩略图。任何帮助将不胜感激。
答案 0 :(得分:0)
在数组上调用.ToString()
只返回数组的类型,在本例中为System.String[]
。尝试循环遍历filePaths
数组中的字符串,并将其添加到imageListView1.Items
。
对于硬编码的E:\
,您已经拥有foreach循环中的可移除drive
。致电drive.Name
获取驱动器名称,而不是E:\
。