FileStream.CanRead 属性
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
获取一个值,该值指示当前流是否支持读取。
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 可以写入和读取”。,请将 构造函数中的 FileStream
参数更改为 。FileAccess
ReadWrite
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.");
}
}
}
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 的类不支持读取,则对 、 ReadByte和 BeginRead 方法的Read调用会引发 NotSupportedException。
如果流关闭,此属性返回 false
。