FileStream.CanRead Свойство

Определение

Возвращает значение, указывающее, поддерживает ли текущий поток чтение.

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

Значение свойства

true Значение , если поток поддерживает чтение; false Значение , если поток закрыт или открыт с доступом только для записи.

Примеры

В следующем примере показано использование CanRead свойства. Выходные данные этого кода : "MyFile.txt не является записываемым". Чтобы получить выходное сообщение "MyFile.txt можно записать в и прочитать из". Измените FileAccess параметр ReadWrite на FileStream конструктор.

using System;
using System.IO;

class TestRW
{
    public static void Main(String[] args)
    {
        FileStream fs = new FileStream("MyFile.txt", FileMode.OpenOrCreate, FileAccess.Read);
        if (fs.CanRead && fs.CanWrite)
        {
            Console.WriteLine("MyFile.txt can be both written to and read from.");
        }
        else if (fs.CanRead)
        {
            Console.WriteLine("MyFile.txt is not writable.");
        }
    }
}
open System.IO

let fs = new FileStream("MyFile.txt", FileMode.OpenOrCreate, FileAccess.Read)

if fs.CanRead && fs.CanWrite then
    printfn "MyFile.txt can be both written to and read from."
else if fs.CanRead then
    printfn "MyFile.txt is not writable."
Imports System.IO

Class TestRW

    Public Shared Sub Main()
        Dim fs As New FileStream("MyFile.txt", FileMode.OpenOrCreate, FileAccess.Read)
        If fs.CanRead And fs.CanWrite Then
            Console.WriteLine("MyFile.txt can be both written to and read from.")
        Else
            If fs.CanRead Then
                Console.WriteLine("MyFile.txt is not writable.")
            End If
        End If
    End Sub
End Class

Комментарии

Если класс, производный от Stream не поддерживает чтение, вызовы ReadReadByteи BeginRead методы создают исключениеNotSupportedException.

Если поток закрыт, это свойство возвращается false.

Применяется к

См. также раздел