Save method of Bitmap class does not truncate file size

Article translations Article translations
Article ID: 312119 - View products that this article applies to.
This article was previously published under Q312119
This article has been archived. It is offered "as is" and will no longer be updated.
Note Microsoft Visual C++ .NET (2002) supports both the managed code model that is provided by the Microsoft .NET Framework and the unmanaged native Microsoft Windows code model. The information in this article applies only to unmanaged Visual C++ code.
Note Microsoft Visual C++ 2005 supports both the managed code model that is provided by the Microsoft .NET Framework and the unmanaged native Microsoft Windows code model.
The following .NET Framework Class Library namespaces are referenced in this article:
  • System.Drawing
  • System.IO
Expand all | Collapse all

On This Page

SYMPTOMS

When you invoke the Save method of the Bitmap class to overwrite an existing file of the same name, the resulting file is not truncated as expected.

CAUSE

This behavior occurs because the implementation of the Save method does not truncate any already existing file.

RESOLUTION

To work around this issue, delete the file before you invoke the Bitmap.Save method.

The file can be deleted in Visual Basic .NET or in Visual Basic 2005 and C# by using the System.IO.File.Delete method provided by the .NET Framework in the System.IO namespace.

MORE INFORMATION

Steps to reproduce the problem

  1. Create a Bitmap class by using the version of the Bitmap constructor that accepts a file name.
  2. Create a file with the same file name and extension as the target file name to be used in the Save method. Ensure that this file is larger than the file used to construct the Bitmap.
  3. Use the Bitmap.Save operator to save the Bitmap object by using the file name of the file that you created in step 2. Note that the resulting file is a copy of the image file, and that the file size has not changed from that of the pre-existing file.

    Note This issue can also occur with the System.Drawing.Image class.

Properties

Article ID: 312119 - Last Review: February 27, 2014 - Revision: 4.7
APPLIES TO
  • Microsoft .NET Framework 2.0
  • Microsoft .NET Framework Class Libraries 1.0
  • Microsoft Visual C++ 2005 Express Edition
  • Microsoft Visual C++ .NET 2003 Standard Edition
  • Microsoft Visual C++ .NET 2002 Standard Edition
  • Microsoft .NET Framework 1.0
  • Microsoft Visual Basic .NET 2002 Standard Edition
  • Microsoft Visual Basic 2005
  • Microsoft Visual C# .NET 2002 Standard Edition
  • Microsoft Visual C# 2005
Keywords: 
kbnosurvey kbarchive kbreadme kbprb kbvs2005applies kbvs2005swept KB312119

Give Feedback

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com