C# 如何加载和存储图像文件夹
我有一个团队计划正在进行中,我的部分是添加加载单个图像或(更可能)图像文件夹的功能,并保存它们,以便程序能够访问它们的其他方面 以下是我的实际问题:C# 如何加载和存储图像文件夹,c#,image,list,directory,C#,Image,List,Directory,我有一个团队计划正在进行中,我的部分是添加加载单个图像或(更可能)图像文件夹的功能,并保存它们,以便程序能够访问它们的其他方面 以下是我的实际问题: 我需要一个如何显示打开文件或打开文件夹对话框的示例 在文件夹中存储所有图像的最佳方式示例 注意:我将需要最终显示这些图像,但它将在程序的另一部分根据颜色重新排序它们之后 像这样的事情可能: Dictionary<string, Bitmap> images = new Dictionary<string, Bitmap&
打开文件
或打开文件夹
对话框的示例注意:我将需要最终显示这些图像,但它将在程序的另一部分根据颜色重新排序它们之后 像这样的事情可能:
Dictionary<string, Bitmap> images = new Dictionary<string, Bitmap>();
string[] extensions = new string[]{".BMP",".JPG",".GIF",".PNG"};
var fd = new System.Windows.Forms.FolderBrowserDialog();
if (fd.ShowDialog() == System.Windows.Forms.DialogResult.OK)
{
foreach (var file in Directory.GetFiles(fd.SelectedPath).Where(f => extensions.Contains(Path.GetExtension(f).ToUpper())))
{
images.Add(Path.GetFileNameWithoutExtension(file), new Bitmap(file));
}
}
桌面应用程序还是web应用程序?ASP.NET还是MVC?到目前为止,我还没有遇到很多问题,甚至让C#工作并打开我的项目。但是在我开始之前,我想知道应该做些什么。我还没有测试它,但是看起来不错,但是上面的代码只接受文件夹,对吗?我一直在四处寻找,似乎打开文件或文件夹对话框不是一件容易的事情,所以可能只打开文件夹对话框就足够了。谢谢你,如果我有任何问题,我会在这里发布。好的,那么代码中的问题~foreach(Directory.GetFiles(fd.SelectedPath,*.png)中的var文件)~z~接受所有图像文件类型的正确方法是什么?没有真正好的方法可以做到这一点,但我已经用一种适合我的方法更新了答案:)谢谢,这可能不是最干净的代码,但它比我见过的其他示例更容易理解。
var fd = new System.Windows.Forms.OpenFileDialog();
fd.Filter = "Image Files(*.BMP;*.JPG;*.GIF;*.PNG)|*.BMP;*.JPG;*.GIF;*.PNG";
if (fd.ShowDialog() == System.Windows.Forms.DialogResult.OK)
{
images.Add(Path.GetFileNameWithoutExtension(fd.FileName,new Bitmap(fd.FileName));
}