Свойство CanRead
Stream.CanRead возвращает true,
если из потока можно вызывать
Read.
После
Dispose
обычно false. Запись проверяют
через
CanWrite.
FileStream открывают через
File.Open
с нужным режимом.
Синтаксис
bool ok = stream.CanRead;
Пример
Давайте проверим новый MemoryStream:
using System;
using System.IO;
class Program
{
static void Main()
{
using var ms = new MemoryStream();
bool res = ms.CanRead;
Console.WriteLine(res);
}
}
Результат выполнения кода:
True
Пример
Давайте убедимся, что чтение возможно после записи:
using System;
using System.IO;
class Program
{
static void Main()
{
using var ms = new MemoryStream();
ms.Write([1, 2, 3, 4, 5], 0, 5);
bool res = ms.CanRead;
Console.WriteLine(res);
}
}
Результат выполнения кода:
True
Пример
Давайте проверим CanRead после
закрытия потока:
using System;
using System.IO;
class Program
{
static void Main()
{
var ms = new MemoryStream();
ms.Dispose();
bool res = ms.CanRead;
Console.WriteLine(res);
}
}
Результат выполнения кода:
False