Stream Stream Stream Stream Class

定義

バイト シーケンスのジェネリック ビューを提供します。Provides a generic view of a sequence of bytes. これは抽象クラスです。This is an abstract class.

public ref class Stream abstract : MarshalByRefObject, IDisposable
[System.Runtime.InteropServices.ComVisible(true)]
[System.Serializable]
public abstract class Stream : MarshalByRefObject, IDisposable
type Stream = class
    inherit MarshalByRefObject
    interface IDisposable
Public MustInherit Class Stream
Inherits MarshalByRefObject
Implements IDisposable
継承
派生
属性
実装

次の例では、2つFileStreamのオブジェクトを使用して、あるディレクトリから別のディレクトリにファイルを非同期的にコピーする方法を示します。The following example demonstrates how to use two FileStream objects to asynchronously copy the files from one directory to another directory. FileStream クラスは Stream クラスから派生します。The FileStream class derives from the Stream class. 非同期のメソッドを呼び出すので、 Click コントロールの Button イベント ハンドラーは async 修飾子でマークされていることに注意してください。Notice that the Click event handler for the Button control is marked with the async modifier because it calls an asynchronous method.

using System;
using System.Threading.Tasks;
using System.Windows;
using System.IO;

namespace WpfApplication
{
    public partial class MainWindow : Window
    {
        public MainWindow()
        {
            InitializeComponent();
        }

        private async void Button_Click(object sender, RoutedEventArgs e)
        {
            string StartDirectory = @"c:\Users\exampleuser\start";
            string EndDirectory = @"c:\Users\exampleuser\end";

            foreach (string filename in Directory.EnumerateFiles(StartDirectory))
            {
                using (FileStream SourceStream = File.Open(filename, FileMode.Open))
                {
                    using (FileStream DestinationStream = File.Create(EndDirectory + filename.Substring(filename.LastIndexOf('\\'))))
                    {
                        await SourceStream.CopyToAsync(DestinationStream);
                    }
                }
            }
        }
    }
}
Imports System.IO

Class MainWindow

    Private Async Sub Button_Click(sender As Object, e As RoutedEventArgs)
        Dim StartDirectory As String = "c:\Users\exampleuser\start"
        Dim EndDirectory As String = "c:\Users\exampleuser\end"

        For Each filename As String In Directory.EnumerateFiles(StartDirectory)
            Using SourceStream As FileStream = File.Open(filename, FileMode.Open)
                Using DestinationStream As FileStream = File.Create(EndDirectory + filename.Substring(filename.LastIndexOf("\"c)))
                    Await SourceStream.CopyToAsync(DestinationStream)
                End Using

            End Using
        Next
    End Sub

End Class

注釈

Streamは、すべてのストリームの抽象基本クラスです。Stream is the abstract base class of all streams. ストリームとは、ファイル、入出力デバイス、プロセス間通信のパイプ、または TCP/IP ソケットなどのバイト シーケンスを抽象化したものです。A stream is an abstraction of a sequence of bytes, such as a file, an input/output device, an inter-process communication pipe, or a TCP/IP socket. クラスStreamとその派生クラスは、これらのさまざまな種類の入力と出力の汎用ビューを提供し、プログラマとオペレーティングシステムの固有の詳細および基になるデバイスを分離します。The Stream class and its derived classes provide a generic view of these different types of input and output, and isolate the programmer from the specific details of the operating system and the underlying devices.

ストリームには次の 3 つの基本的な操作が含まれます。Streams involve three fundamental operations:

  • ストリームから読み取ることができます。You can read from streams. 読み取りとは、ストリームからバイト配列などのデータ構造にデータを転送することです。Reading is the transfer of data from a stream into a data structure, such as an array of bytes.

  • ストリームに書き込むことができます。You can write to streams. 書き込みとは、データ構造からストリームへのデータの転送です。Writing is the transfer of data from a data structure into a stream.

  • ストリームはシークをサポートできます。Streams can support seeking. シークとは、ストリーム内の現在位置を照会および変更することを指します。Seeking refers to querying and modifying the current position within a stream. シーク機能は、ストリームが持つバッキングストアの種類によって異なります。Seek capability depends on the kind of backing store a stream has. たとえば、ネットワークストリームには、現在の位置とは統一された概念がないため、通常はシークをサポートしていません。For example, network streams have no unified concept of a current position, and therefore typically do not support seeking.

からStream継承する一般的に使用されるストリームにはFileStream、、 MemoryStream、およびがあります。Some of the more commonly used streams that inherit from Stream are FileStream, and MemoryStream.

基になるデータソースまたはリポジトリによっては、これらの機能の一部しかサポートされない場合もあります。Depending on the underlying data source or repository, streams might support only some of these capabilities. クラスのCanReadCanWrite、およびCanSeekの各プロパティを使用して、その機能のストリームに対してクエリを実行できます。 StreamYou can query a stream for its capabilities by using the CanRead, CanWrite, and CanSeek properties of the Stream class.

メソッドReadWriteメソッドは、さまざまな形式でデータの読み取りと書き込みを行います。The Read and Write methods read and write data in a variety of formats. シークをサポートするストリームの場合、 SeekおよびSetLengthメソッドとPosition Length 、プロパティおよびプロパティを使用して、ストリームの現在位置と長さを照会および変更します。For streams that support seeking, use the Seek and SetLength methods and the Position and Length properties to query and modify the current position and length of a stream.

この型は IDisposable インターフェイスを実装します。This type implements the IDisposable interface. 型の使用が完了したら、直接的または間接的に型を破棄する必要があります。When you have finished using the type, you should dispose of it either directly or indirectly. 直接的に型を破棄するには、try / catch ブロック内で Dispose メソッドを呼び出します。To dispose of the type directly, call its Dispose method in a try/catch block. 間接的に型を破棄するには、using (C# の場合) または Using (Visual Basic 言語) などの言語構成要素を使用します。To dispose of it indirectly, use a language construct such as using (in C#) or Using (in Visual Basic). 詳細については、IDisposable インターフェイスに関するトピック内の「IDisposable を実装するオブジェクトの使用」セクションを参照してください。For more information, see the "Using an Object that Implements IDisposable" section in the IDisposable interface topic.

オブジェクトをStream破棄すると、バッファー内のデータがフラッシュFlushされ、基本的にメソッドが呼び出されます。Disposing a Stream object flushes any buffered data, and essentially calls the Flush method for you. Disposeでは、ファイルハンドル、ネットワーク接続、または内部バッファリングに使用されるメモリなどのオペレーティングシステムリソースも解放されます。Dispose also releases operating system resources such as file handles, network connections, or memory used for any internal buffering. クラスBufferedStreamは、読み取りと書き込みのパフォーマンスを向上させるために、バッファー内のストリームを別のストリームの周りにラップする機能を提供します。The BufferedStream class provides the capability of wrapping a buffered stream around another stream in order to improve read and write performance.

以降では、非同期Stream操作を簡略化する非同期メソッドがクラスに含まれています。 .NET Framework 4.5.NET Framework 4.5Starting with the .NET Framework 4.5.NET Framework 4.5, the Stream class includes async methods to simplify asynchronous operations. 非同期メソッドの名前Async ReadAsyncには、 WriteAsync CopyToAsync、、、 FlushAsyncなどが含まれます。An async method contains Async in its name, such as ReadAsync, WriteAsync, CopyToAsync, and FlushAsync. これらのメソッドを使用すると、メインスレッドをブロックせずに、リソースを集中的に使用する i/o 操作を実行できます。These methods enable you to perform resource-intensive I/O operations without blocking the main thread. このパフォーマンスに関する考慮事項は、時間のかかるストリーム操作によって UI スレッドがブロックされ、アプリが動作していないと見なされる可能性がある Windows 8.x ストアWindows 8.x Store アプリまたはデスクトップdesktop アプリで特に重要です。This performance consideration is particularly important in a Windows 8.x ストアWindows 8.x Store app or デスクトップdesktop app where a time-consuming stream operation can block the UI thread and make your app appear as if it is not working. 非同期メソッドは、Visual Basic およびasync await C#のキーワードと共に使用されます。The async methods are used in conjunction with the async and await keywords in Visual Basic and C#.

Windows 8.x ストアWindows 8.x Storeアプリで使用する場合、 Streamには、 AsInputStreamととAsOutputStreamいう2つの拡張メソッドが含まれます。When used in a Windows 8.x ストアWindows 8.x Store app, Stream includes two extension methods: AsInputStream and AsOutputStream. これらのメソッドはStreamWindows ランタイムWindows Runtimeオブジェクトを内のストリームに変換します。These methods convert a Stream object to a stream in the Windows ランタイムWindows Runtime. また、メソッドWindows ランタイムWindows Runtime AsStreamForReadStream メソッドAsStreamForWriteを使用して、のストリームをオブジェクトに変換することもできます。You can also convert a stream in the Windows ランタイムWindows Runtime to a Stream object by using the AsStreamForRead and AsStreamForWrite methods. 詳細については、「方法 :.NET Framework ストリームと Windows ランタイム ストリームの間で変換を行うFor more information, see How to: Convert Between .NET Framework Streams and Windows Runtime Streams

一部のストリーム実装では、パフォーマンスを向上させるために、基になるデータのローカルバッファーが実行されます。Some stream implementations perform local buffering of the underlying data to improve performance. このようなストリームでFlushは、メソッドまたはFlushAsyncメソッドを使用して内部バッファーをクリアし、基になるデータソースまたはリポジトリにすべてのデータが書き込まれていることを確認できます。For such streams, you can use the Flush or FlushAsync method to clear any internal buffers and ensure that all data has been written to the underlying data source or repository.

バッキングストアを持たないストリーム (ビットバケットとも呼ばれます) が必要な場合はNull 、フィールドを使用して、この目的のために設計されたストリームのインスタンスを取得します。If you need a stream with no backing store (also known as a bit bucket), use the Null field to retrieve an instance of a stream that is designed for this purpose.

注意 (継承者)

Stream派生クラスを実装する場合は、メソッドRead(Byte[], Int32, Int32)Write(Byte[], Int32, Int32)メソッドの実装を指定する必要があります。When you implement a derived class of Stream, you must provide implementations for the Read(Byte[], Int32, Int32) and Write(Byte[], Int32, Int32) methods. ReadAsync(Byte[], Int32, Int32)非同期メソッドCopyToAsync(Stream) Read(Byte[], Int32, Int32) 、、およびは、同期メソッドとWrite(Byte[], Int32, Int32)その実装を使用します。 WriteAsync(Byte[], Int32, Int32)The asynchronous methods ReadAsync(Byte[], Int32, Int32), WriteAsync(Byte[], Int32, Int32), and CopyToAsync(Stream) use the synchronous methods Read(Byte[], Int32, Int32) and Write(Byte[], Int32, Int32) in their implementations. したがって、およびRead(Byte[], Int32, Int32) Write(Byte[], Int32, Int32)の実装は、非同期メソッドで正常に動作します。Therefore, your implementations of Read(Byte[], Int32, Int32) and Write(Byte[], Int32, Int32) will work correctly with the asynchronous methods. ReadByte() Read(Byte[], Int32, Int32) Write(Byte[], Int32, Int32)の既定の実装では、新しい単一要素のバイト配列を作成してから、およびの実装を呼び出します。 WriteByte(Byte)The default implementations of ReadByte() and WriteByte(Byte) create a new single-element byte array, and then call your implementations of Read(Byte[], Int32, Int32) and Write(Byte[], Int32, Int32). からStream派生する場合は、これらのメソッドをオーバーライドして内部バッファーにアクセスすることをお勧めします (存在する場合)。これにより、パフォーマンスが大幅に向上します。When you derive from Stream, we recommend that you override these methods to access your internal buffer, if you have one, for substantially better performance. またCanRead、、、 CanSeek CanWrite、 、、Flush()、 、およびSetLength(Int64)の実装も用意する必要があります。 Seek(Int64, SeekOrigin) Length PositionYou must also provide implementations of CanRead, CanSeek, CanWrite, Flush(), Length, Position, Seek(Int64, SeekOrigin), and SetLength(Int64).

メソッドをオーバーライドClose()するのではなく、すべてのStreamクリーンアップロジックをDispose(Boolean)メソッドに含めます。Do not override the Close() method, instead, put all the Stream cleanup logic in the Dispose(Boolean) method. 詳細については、「 Dispose メソッドの実装」を参照してください。For more information, see Implementing a Dispose Method.

コンストラクター

Stream() Stream() Stream() Stream()

Stream クラスの新しいインスタンスを初期化します。Initializes a new instance of the Stream class.

フィールド

Null Null Null Null

バッキング ストアを持たない StreamA Stream with no backing store.

プロパティ

CanRead CanRead CanRead CanRead

派生クラスでオーバーライドされた場合は、現在のストリームが読み取りをサポートするかどうかを示す値を取得します。When overridden in a derived class, gets a value indicating whether the current stream supports reading.

CanSeek CanSeek CanSeek CanSeek

派生クラスでオーバーライドされた場合は、現在のストリームがシークをサポートするかどうかを示す値を取得します。When overridden in a derived class, gets a value indicating whether the current stream supports seeking.

CanTimeout CanTimeout CanTimeout CanTimeout

現在のストリームがタイムアウトできるかどうかを決定する値を取得します。Gets a value that determines whether the current stream can time out.

CanWrite CanWrite CanWrite CanWrite

派生クラスでオーバーライドされた場合は、現在のストリームが書き込みをサポートするかどうかを示す値を取得します。When overridden in a derived class, gets a value indicating whether the current stream supports writing.

Length Length Length Length

派生クラスでオーバーライドされた場合は、ストリームの長さをバイト単位で取得します。When overridden in a derived class, gets the length in bytes of the stream.

Position Position Position Position

派生クラスでオーバーライドされた場合は、現在のストリーム内の位置を取得または設定します。When overridden in a derived class, gets or sets the position within the current stream.

ReadTimeout ReadTimeout ReadTimeout ReadTimeout

ストリームがタイムアウト前に読み取りを試行する期間を決定する値 (ミリ秒単位) を取得または設定します。Gets or sets a value, in milliseconds, that determines how long the stream will attempt to read before timing out.

WriteTimeout WriteTimeout WriteTimeout WriteTimeout

ストリームがタイムアウト前に書き込みを試行する期間を決定する値 (ミリ秒単位) を取得または設定します。Gets or sets a value, in milliseconds, that determines how long the stream will attempt to write before timing out.

メソッド

BeginRead(Byte[], Int32, Int32, AsyncCallback, Object) BeginRead(Byte[], Int32, Int32, AsyncCallback, Object) BeginRead(Byte[], Int32, Int32, AsyncCallback, Object) BeginRead(Byte[], Int32, Int32, AsyncCallback, Object)

非同期の読み込み動作を開始します。Begins an asynchronous read operation. (代わりに、ReadAsync(Byte[], Int32, Int32) の使用を検討してください。)(Consider using ReadAsync(Byte[], Int32, Int32) instead.)

BeginWrite(Byte[], Int32, Int32, AsyncCallback, Object) BeginWrite(Byte[], Int32, Int32, AsyncCallback, Object) BeginWrite(Byte[], Int32, Int32, AsyncCallback, Object) BeginWrite(Byte[], Int32, Int32, AsyncCallback, Object)

非同期の書き込み操作を開始します。Begins an asynchronous write operation. (代わりに、WriteAsync(Byte[], Int32, Int32) の使用を検討してください。)(Consider using WriteAsync(Byte[], Int32, Int32) instead.)

Close() Close() Close() Close()

現在のストリームを閉じ、現在のストリームに関連付けられているすべてのリソース (ソケット、ファイル ハンドルなど) を解放します。Closes the current stream and releases any resources (such as sockets and file handles) associated with the current stream. このメソッドを呼び出す代わりに、ストリームが適切に破棄されていることを確認します。Instead of calling this method, ensure that the stream is properly disposed.

CopyTo(Stream) CopyTo(Stream) CopyTo(Stream) CopyTo(Stream)

現在のストリームからバイトを読み取り、別のストリームに書き込みます。Reads the bytes from the current stream and writes them to another stream.

CopyTo(Stream, Int32) CopyTo(Stream, Int32) CopyTo(Stream, Int32) CopyTo(Stream, Int32)

指定されたバッファー サイズを使用して、現在のストリームからバイトを読み取り、別のストリームに書き込みます。Reads the bytes from the current stream and writes them to another stream, using a specified buffer size.

CopyToAsync(Stream) CopyToAsync(Stream) CopyToAsync(Stream) CopyToAsync(Stream)

現在のストリームからすべてのバイトを非同期に読み取り、別のストリームに書き込みます。Asynchronously reads the bytes from the current stream and writes them to another stream.

CopyToAsync(Stream, CancellationToken) CopyToAsync(Stream, CancellationToken) CopyToAsync(Stream, CancellationToken) CopyToAsync(Stream, CancellationToken)

指定されたバッファー サイズを使用して、現在のストリームからバイトを非同期に読み取り、指定されたキャンセル トークンを使用して、別のストリームに書き込みます。Asynchronously reads the bytes from the current stream and writes them to another stream, using a specified cancellation token.

CopyToAsync(Stream, Int32) CopyToAsync(Stream, Int32) CopyToAsync(Stream, Int32) CopyToAsync(Stream, Int32)

指定されたバッファー サイズを使用して、現在のストリームからバイトを非同期に読み取り、別のストリームに書き込みます。Asynchronously reads the bytes from the current stream and writes them to another stream, using a specified buffer size.

CopyToAsync(Stream, Int32, CancellationToken) CopyToAsync(Stream, Int32, CancellationToken) CopyToAsync(Stream, Int32, CancellationToken) CopyToAsync(Stream, Int32, CancellationToken)

指定されたバッファー サイズを使用して、現在のストリームからバイトを非同期に読み取り、指定されたバッファー サイズとキャンセル トークンを使用して、別のストリームに書き込みます。Asynchronously reads the bytes from the current stream and writes them to another stream, using a specified buffer size and cancellation token.

CreateObjRef(Type) CreateObjRef(Type) CreateObjRef(Type) CreateObjRef(Type)

リモート オブジェクトとの通信に使用するプロキシの生成に必要な情報をすべて格納しているオブジェクトを作成します。Creates an object that contains all the relevant information required to generate a proxy used to communicate with a remote object.

(Inherited from MarshalByRefObject)
CreateWaitHandle() CreateWaitHandle() CreateWaitHandle() CreateWaitHandle()

WaitHandle オブジェクトを割り当てます。Allocates a WaitHandle object.

Dispose() Dispose() Dispose() Dispose()

Stream によって使用されているすべてのリソースを解放します。Releases all resources used by the Stream.

Dispose(Boolean) Dispose(Boolean) Dispose(Boolean) Dispose(Boolean)

Stream によって使用されているアンマネージド リソースを解放し、オプションでマネージド リソースも解放します。Releases the unmanaged resources used by the Stream and optionally releases the managed resources.

DisposeAsync() DisposeAsync() DisposeAsync() DisposeAsync()

Stream によって使用されているアンマネージ リソースを非同期に解放します。Asynchronously releases the unmanaged resources used by the Stream.

EndRead(IAsyncResult) EndRead(IAsyncResult) EndRead(IAsyncResult) EndRead(IAsyncResult)

保留中の非同期読み取りが完了するまで待機します。Waits for the pending asynchronous read to complete. (代わりに、ReadAsync(Byte[], Int32, Int32) の使用を検討してください。)(Consider using ReadAsync(Byte[], Int32, Int32) instead.)

EndWrite(IAsyncResult) EndWrite(IAsyncResult) EndWrite(IAsyncResult) EndWrite(IAsyncResult)

非同期書き込み操作を終了します。Ends an asynchronous write operation. (代わりに、WriteAsync(Byte[], Int32, Int32) の使用を検討してください。)(Consider using WriteAsync(Byte[], Int32, Int32) instead.)

Equals(Object) Equals(Object) Equals(Object) Equals(Object)

指定したオブジェクトが、現在のオブジェクトと等しいかどうかを判断します。Determines whether the specified object is equal to the current object.

(Inherited from Object)
Flush() Flush() Flush() Flush()

派生クラスによってオーバーライドされた場合は、ストリームに対応するすべてのバッファーをクリアし、バッファー内のデータを基になるデバイスに書き込みます。When overridden in a derived class, clears all buffers for this stream and causes any buffered data to be written to the underlying device.

FlushAsync() FlushAsync() FlushAsync() FlushAsync()

ストリームに対応するすべてのバッファーを非同期にクリアし、バッファー内のデータを基になるデバイスに書き込みます。Asynchronously clears all buffers for this stream and causes any buffered data to be written to the underlying device.

FlushAsync(CancellationToken) FlushAsync(CancellationToken) FlushAsync(CancellationToken) FlushAsync(CancellationToken)

ストリームに対応するすべてのバッファーを非同期にクリアし、バッファー内のデータを基になるデバイスに書き込み、キャンセル要求を監視します。Asynchronously clears all buffers for this stream, causes any buffered data to be written to the underlying device, and monitors cancellation requests.

GetHashCode() GetHashCode() GetHashCode() GetHashCode()

既定のハッシュ関数として機能します。Serves as the default hash function.

(Inherited from Object)
GetLifetimeService() GetLifetimeService() GetLifetimeService() GetLifetimeService()

対象のインスタンスの有効期間ポリシーを制御する、現在の有効期間サービス オブジェクトを取得します。Retrieves the current lifetime service object that controls the lifetime policy for this instance.

(Inherited from MarshalByRefObject)
GetType() GetType() GetType() GetType()

現在のインスタンスの Type を取得します。Gets the Type of the current instance.

(Inherited from Object)
InitializeLifetimeService() InitializeLifetimeService() InitializeLifetimeService() InitializeLifetimeService()

このインスタンスの有効期間ポリシーを制御する有効期間サービス オブジェクトを取得します。Obtains a lifetime service object to control the lifetime policy for this instance.

(Inherited from MarshalByRefObject)
MemberwiseClone() MemberwiseClone() MemberwiseClone() MemberwiseClone()

現在の Object の簡易コピーを作成します。Creates a shallow copy of the current Object.

(Inherited from Object)
MemberwiseClone(Boolean) MemberwiseClone(Boolean) MemberwiseClone(Boolean) MemberwiseClone(Boolean)

現在の MarshalByRefObject オブジェクトの簡易コピーを作成します。Creates a shallow copy of the current MarshalByRefObject object.

(Inherited from MarshalByRefObject)
ObjectInvariant() ObjectInvariant() ObjectInvariant() ObjectInvariant()

Contract のサポートを提供します。Provides support for a Contract.

Read(Byte[], Int32, Int32) Read(Byte[], Int32, Int32) Read(Byte[], Int32, Int32) Read(Byte[], Int32, Int32)

派生クラスによってオーバーライドされた場合は、現在のストリームからバイト シーケンスを読み取り、読み取ったバイト数の分だけストリームの位置を進めます。When overridden in a derived class, reads a sequence of bytes from the current stream and advances the position within the stream by the number of bytes read.

Read(Span<Byte>) Read(Span<Byte>) Read(Span<Byte>) Read(Span<Byte>)

派生クラスによってオーバーライドされた場合は、現在のストリームからバイト シーケンスを読み取り、読み取ったバイト数の分だけストリームの位置を進めます。When overridden in a derived class, reads a sequence of bytes from the current stream and advances the position within the stream by the number of bytes read.

ReadAsync(Byte[], Int32, Int32) ReadAsync(Byte[], Int32, Int32) ReadAsync(Byte[], Int32, Int32) ReadAsync(Byte[], Int32, Int32)

現在のストリームからバイト シーケンスを非同期に読み取り、読み取ったバイト数だけストリーム内の位置を進めます。Asynchronously reads a sequence of bytes from the current stream and advances the position within the stream by the number of bytes read.

ReadAsync(Byte[], Int32, Int32, CancellationToken) ReadAsync(Byte[], Int32, Int32, CancellationToken) ReadAsync(Byte[], Int32, Int32, CancellationToken) ReadAsync(Byte[], Int32, Int32, CancellationToken)

現在のストリームからバイト シーケンスを非同期に読み取り、読み取ったバイト数だけストリーム内の位置を進め、キャンセル要求を監視します。Asynchronously reads a sequence of bytes from the current stream, advances the position within the stream by the number of bytes read, and monitors cancellation requests.

ReadAsync(Memory<Byte>, CancellationToken) ReadAsync(Memory<Byte>, CancellationToken) ReadAsync(Memory<Byte>, CancellationToken) ReadAsync(Memory<Byte>, CancellationToken)

現在のストリームからバイト シーケンスを非同期に読み取り、読み取ったバイト数だけストリーム内の位置を進め、キャンセル要求を監視します。Asynchronously reads a sequence of bytes from the current stream, advances the position within the stream by the number of bytes read, and monitors cancellation requests.

ReadByte() ReadByte() ReadByte() ReadByte()

ストリームから 1 バイトを読み取り、ストリーム内の位置を 1 バイト進めます。ストリームの末尾の場合は -1 を返します。Reads a byte from the stream and advances the position within the stream by one byte, or returns -1 if at the end of the stream.

Seek(Int64, SeekOrigin) Seek(Int64, SeekOrigin) Seek(Int64, SeekOrigin) Seek(Int64, SeekOrigin)

派生クラスでオーバーライドされた場合は、現在のストリーム内の位置を設定します。When overridden in a derived class, sets the position within the current stream.

SetLength(Int64) SetLength(Int64) SetLength(Int64) SetLength(Int64)

派生クラスでオーバーライドされた場合は、現在のストリームの長さを設定します。When overridden in a derived class, sets the length of the current stream.

Synchronized(Stream) Synchronized(Stream) Synchronized(Stream) Synchronized(Stream)

指定した Stream オブジェクトをラップするスレッド セーフな (同期された) ラッパーを作成します。Creates a thread-safe (synchronized) wrapper around the specified Stream object.

ToString() ToString() ToString() ToString()

現在のオブジェクトを表す文字列を返します。Returns a string that represents the current object.

(Inherited from Object)
Write(Byte[], Int32, Int32) Write(Byte[], Int32, Int32) Write(Byte[], Int32, Int32) Write(Byte[], Int32, Int32)

派生クラスによってオーバーライドされた場合は、現在のストリームにバイト シーケンスを書き込み、書き込んだバイト数の分だけストリームの現在位置を進めます。When overridden in a derived class, writes a sequence of bytes to the current stream and advances the current position within this stream by the number of bytes written.

Write(ReadOnlySpan<Byte>) Write(ReadOnlySpan<Byte>) Write(ReadOnlySpan<Byte>) Write(ReadOnlySpan<Byte>)

派生クラスによってオーバーライドされた場合は、現在のストリームにバイト シーケンスを書き込み、書き込んだバイト数の分だけストリームの現在位置を進めます。When overridden in a derived class, writes a sequence of bytes to the current stream and advances the current position within this stream by the number of bytes written.

WriteAsync(Byte[], Int32, Int32) WriteAsync(Byte[], Int32, Int32) WriteAsync(Byte[], Int32, Int32) WriteAsync(Byte[], Int32, Int32)

現在のストリームにバイト シーケンスを非同期に書き込み、書き込んだバイト数だけストリーム内の現在位置を進めます。Asynchronously writes a sequence of bytes to the current stream and advances the current position within this stream by the number of bytes written.

WriteAsync(Byte[], Int32, Int32, CancellationToken) WriteAsync(Byte[], Int32, Int32, CancellationToken) WriteAsync(Byte[], Int32, Int32, CancellationToken) WriteAsync(Byte[], Int32, Int32, CancellationToken)

現在のストリームにバイト シーケンスを非同期に書き込み、書き込んだバイト数だけストリーム内の現在位置を進め、キャンセル要求を監視します。Asynchronously writes a sequence of bytes to the current stream, advances the current position within this stream by the number of bytes written, and monitors cancellation requests.

WriteAsync(ReadOnlyMemory<Byte>, CancellationToken) WriteAsync(ReadOnlyMemory<Byte>, CancellationToken) WriteAsync(ReadOnlyMemory<Byte>, CancellationToken) WriteAsync(ReadOnlyMemory<Byte>, CancellationToken)

現在のストリームにバイト シーケンスを非同期に書き込み、書き込んだバイト数だけストリーム内の現在位置を進め、キャンセル要求を監視します。Asynchronously writes a sequence of bytes to the current stream, advances the current position within this stream by the number of bytes written, and monitors cancellation requests.

WriteByte(Byte) WriteByte(Byte) WriteByte(Byte) WriteByte(Byte)

ストリームの現在位置にバイトを書き込み、ストリームの位置を 1 バイトだけ進めます。Writes a byte to the current position in the stream and advances the position within the stream by one byte.

明示的なインターフェイスの実装

IDisposable.Dispose() IDisposable.Dispose() IDisposable.Dispose() IDisposable.Dispose()

Stream によって使用されているすべてのリソースを解放します。Releases all resources used by the Stream.

拡張メソッド

AsInputStream(Stream) AsInputStream(Stream) AsInputStream(Stream) AsInputStream(Stream)

Windows ストア アプリ用 .NET のマネージド ストリームを Windows ランタイムの入力ストリームに変換します。Converts a managed stream in the .NET for Windows Store apps to an input stream in the Windows Runtime.

AsOutputStream(Stream) AsOutputStream(Stream) AsOutputStream(Stream) AsOutputStream(Stream)

Windows ストア アプリ用 .NET のマネージド ストリームを Windows ランタイムの出力ストリームに変換します。Converts a managed stream in the .NET for Windows Store apps to an output stream in the Windows Runtime.

AsRandomAccessStream(Stream) AsRandomAccessStream(Stream) AsRandomAccessStream(Stream) AsRandomAccessStream(Stream)

特定のストリームをランダム アクセス ストリームに変換します。Converts the specified stream to a random access stream.

適用対象

こちらもご覧ください