FileStream.CanSeek Propriedade

Definição

Obtém um valor que indica se o fluxo atual suporta procura.

public:
 virtual property bool CanSeek { bool get(); };
public override bool CanSeek { get; }
member this.CanSeek : bool
Public Overrides ReadOnly Property CanSeek As Boolean

Valor de Propriedade

true se o fluxo suportar a procura; false se o fluxo estiver fechado ou se foi FileStream construído a partir de um handle do sistema operativo, como um pipe ou saída para a consola.

Exemplos

O exemplo seguinte utiliza a CanSeek propriedade para verificar se um fluxo suporta a procura.

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))
        {
            File.Delete(path);
        }

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

let path = @"c:\temp\MyTest.txt"

// Delete the file if it exists.
if File.Exists path then
    File.Delete path


//Create the file.
do
    use fs = File.Create path

    if fs.CanSeek then
        printfn $"The stream connected to {path} is seekable."
    else
        printfn $"The stream connected to {path} is not seekable."
Imports System.IO

Public Class Test

    Public Shared Sub Main()
        Dim path As String = "c:\temp\MyTest.txt"

        ' Delete the file if it exists.
        If File.Exists(path) Then
            File.Delete(path)
        End If

        'Create the file.
        Dim fs As FileStream = File.Create(path)

        If fs.CanSeek Then
            Console.WriteLine("The stream connected to {0} is seekable.", path)
        Else
            Console.WriteLine("The stream connected to {0} is not seekable.", path)
        End If

        fs.Close()
    End Sub
End Class

Observações

Se uma classe derivada de Stream não suportar a procura, chama para Length, SetLength, Position, e Seek lança um NotSupportedException.

Se o fluxo estiver fechado, esta propriedade devolve false.

Aplica-se a

Ver também