c#读取本地文件夹所有图片并筛出指定图片名的图片
时间: 2024-09-18 09:11:50 浏览: 248
在 C# 中,你可以使用 `Directory.GetFiles` 和 `System.Drawing.Image` 类来读取本地文件夹中的所有图片,并筛选出特定名称的图片。这里是一个简单的步骤说明:
1. 引入所需命名空间:
```csharp
using System;
using System.IO;
using System.Drawing;
```
2. 定义一个函数来获取指定图片名的所有图片:
```csharp
public List<String> GetImages(string folderPath, string imageNamePattern)
{
var imageExtensions = new[] { ".jpg", ".jpeg", ".png", ".gif" }; // 常见图片格式
var files = Directory.GetFiles(folderPath, "*" + string.Join("|", imageExtensions));
return files.Where(file => file.Contains(imageNamePattern, StringComparison.OrdinalIgnoreCase)).ToList();
}
```
这个函数接收两个参数:
- `folderPath`: 你想要搜索图片的本地文件夹路径。
- `imageNamePattern`: 你想筛选的图片名模式,使用 `String.Contains` 进行匹配。
3. 使用该函数:
```csharp
string folderToSearch = @"C:\YourFolder\";
string imageNameToFind = "example"; // 例如,你要找的图片名为 "example.jpg"
List<String> matchingFiles = GetImages(folderToSearch, imageNameToFind);
```
4. 筛选出的图片列表将存储在 `matchingFiles` 中。你可以进一步处理这个列表,比如遍历、显示或保存图片等。
注意:
- `StringComparison.OrdinalIgnoreCase` 用于忽略大小写进行匹配。
- 如果图片名包含特殊字符,可能需要对 `imageNamePattern` 加上适当的正则表达式模式。
阅读全文