尝试创建新的位图对象时,参数无效

时间:2013-10-24 05:25:35

标签: c# gdi+

Bitmap bmp = new Bitmap(files2.FullName);

我有上面的代码,其中files2来自

foreach (FileInfo files2 in files)

当我处理大量图像时,它仅为少数图像提供例外。任何人都可以帮助我吗?

由于

这是我的代码:

foreach (FileInfo files2 in files)
{
    string nametime = files2.FullName.ToString();
    DateTime createdTime = File.GetCreationTime(nametime);
    //Console.WriteLine(createdTime);

    //test
    if (createdTime.ToShortDateString() == DateTime.Today.ToShortDateString())
    {
        try
        {
            if (files2.Extension == ".jpg" || files2.Extension == ".png" || files2.Extension == ".JPG" || files2.Extension == ".PNG" || files2.Extension == ".jpeg" || files2.Extension == ".JPEG")
            {
                 Console.WriteLine("Name: " + files2.FullName);
                 Bitmap bmp = new Bitmap(files2.FullName);

1 个答案:

答案 0 :(得分:1)

由于这仅在您处理大批量时发生,因此可能是内存问题。 Bitmap包含非托管资源,因此您应该在完成后调用Dispose。执行此操作的最佳方法是通过using语句隐式:

using (Bitmap bmp = new Bitmap(files2.FullName))
{
    // Process the bitmap here
}