CanSeek Property

FileStream.CanSeek Property


Gets a value indicating whether the current stream supports seeking.

Namespace:   System.IO
Assembly:  mscorlib (in mscorlib.dll)

public override bool CanSeek { get; }

Property Value

Type: System.Boolean

true if the stream supports seeking; false if the stream is closed or if the FileStream was constructed from an operating-system handle such as a pipe or output to the console.

If a class derived from Stream does not support seeking, calls to Length, SetLength, Position, and Seek throw a NotSupportedException.

If the stream is closed, this property returns false.

The following example uses the CanSeek property to check whether a stream supports seeking.

using System;
using System.IO;
using System.Text;

class Test 

    public static void Main() 
        string path = @"c:\temp\MyTest.txt";

        // Delete the file if it exists.
        if (File.Exists(path)) 

        //Create the file.
        using (FileStream fs = File.Create(path)) 
            if (fs.CanSeek) 
                Console.WriteLine("The stream connected to {0} is seekable.", path);
                Console.WriteLine("The stream connected to {0} is not seekable.", path);

Universal Windows Platform
Available since 10
.NET Framework
Available since 1.1
Available since 2.0
Windows Phone Silverlight
Available since 7.0
Return to top
© 2015 Microsoft