FileStream.SetLength(Int64) Method
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Sets the length of this stream to the given value.
public:
override void SetLength(long value);
public override void SetLength (long value);
override this.SetLength : int64 -> unit
Public Overrides Sub SetLength (value As Long)
Parameters
- value
- Int64
The new length of the stream.
Exceptions
An I/O error has occurred.
The stream does not support both writing and seeking.
Attempted to set the value
parameter to less than 0.
Remarks
This method overrides SetLength.
If the given value is less than the current length of the stream, the stream is truncated. In this scenario, if the current position is greater than the new length, the current position is moved to the last byte of the stream. If the given value is larger than the current length of the stream, the stream is expanded, and the current position remains the same. If the stream is expanded, the contents of the stream between the old and the new length are undefined on Windows, while on Linux, that space is filled with zeros.
A stream must support both writing and seeking for SetLength
to work.
Note
Use the CanWrite property to determine whether the current instance supports writing, and the CanSeek property to determine whether seeking is supported. For additional information, see CanWrite and CanSeek.
For a list of common file and directory operations, see Common I/O Tasks.