FileStream.CanRead Свойство

Определение

Получает значение, указывающее, поддерживает ли текущий поток чтение.Gets a value that indicates whether the current stream supports reading.

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, если поток закрыт или открыт только для записи.true if the stream supports reading; false if the stream is closed or was opened with write-only access.

Примеры

В следующем примере демонстрируется использование свойства CanRead.The following example demonstrates a use of the CanRead property. Результатом этого кода является файл MyFile. txt без возможности записи.The output of this code is "MyFile.txt is not writable." Чтобы получить выходное сообщение "MyFile. txt может быть записано и прочитано из", измените параметр FileAccess на ReadWrite в конструкторе FileStream.To get the output message "MyFile.txt can be both written to and read from.", change the FileAccess parameter to ReadWrite in the FileStream constructor.

using namespace System;
using namespace System::IO;
int main( void )
{
   FileStream^ fs = gcnew 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
   {
      Console::WriteLine( "MyFile.txt is not writable" );
   }

   return 0;
}

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.");
        }
    }
}
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, не поддерживает чтение, вызовы методов Read, ReadByteи BeginRead вызовут NotSupportedException.If a class derived from Stream does not support reading, calls to the Read, ReadByte, and BeginRead methods throw a NotSupportedException.

Если поток закрыт, это свойство возвращает false.If the stream is closed, this property returns false.

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

Дополнительно