c#从指定文件夹中提取图片到另外一个文件夹
时间: 2024-10-13 16:10:28 浏览: 44
在C#中,你可以使用`DirectoryInfo`、`FileInfo`以及`Image`类来从指定文件夹中提取所有图片并将其移动或复制到另一个文件夹。以下是一个基本的示例,它遍历指定目录,并把JPG、PNG等常见的图片格式复制到目标文件夹:
```csharp
using System.IO;
using System.Drawing;
using System.Drawing.Imaging;
void ExtractImages(string sourceFolder, string targetFolder)
{
if (!Directory.Exists(sourceFolder) || !Directory.Exists(targetFolder))
{
Console.WriteLine("Source or target folder does not exist.");
return;
}
DirectoryInfo sourceDir = new DirectoryInfo(sourceFolder);
FileInfo[] files = sourceDir.GetFiles("*.*", SearchOption.AllDirectories);
foreach (FileInfo fileInfo in files)
{
if (fileInfo.Extension.ToLower() == ".jpg" || fileInfo.Extension.ToLower() == ".png") // 可以添加更多图片格式
{
try
{
Image image = Image.FromFile(fileInfo.FullName);
string newPath = Path.Combine(targetFolder, fileInfo.Name);
image.Save(newPath, ImageFormat.Jpeg); // 或者使用ImageFormat.Png
Console.WriteLine($"Copied {fileInfo.FullName} to {newPath}");
}
catch (Exception ex)
{
Console.WriteLine($"Failed to copy {fileInfo.FullName}: {ex.Message}");
}
}
}
}
阅读全文