我的目录中只有PNG图片(580张图片)。 我使用此功能将图像加载到内存中
private List<Bitmap> images = new List<Bitmap>();
foreach (String s in Directory.GetFiles(@"frames\", "*.png"))
{
images.Add(new Bitmap(s));
}
但是在加载后如果我尝试将所有图像保存到hdd:
System.IO.Directory.CreateDirectory("result");
for (int i = 0; i < images.Count; i++)
{
images[i].Save(Application.StartupPath + "\\result\\img" + i + ".png", ImageFormat.Png);
}
某些图像在加载到内存之前以错误的顺序保存。
可能是什么问题?
答案 0 :(得分:2)
如果您需要对文件名进行排序 - 您需要手动执行此操作,因为无法保证GetFiles返回文件名的顺序。
即。只需按名称排序:
foreach (String s in Directory.GetFiles(@"frames\", "*.png").OrderBy(t=>t))
{
...
}
答案 1 :(得分:0)