IWritableByteChannel.Write(ByteBuffer) メソッド

定義

指定されたバッファーからこのチャネルにバイトシーケンスを書き込みます。

[Android.Runtime.Register("write", "(Ljava/nio/ByteBuffer;)I", "GetWrite_Ljava_nio_ByteBuffer_Handler:Java.Nio.Channels.IWritableByteChannelInvoker, Mono.Android, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null")]
public int Write (Java.Nio.ByteBuffer? src);
[<Android.Runtime.Register("write", "(Ljava/nio/ByteBuffer;)I", "GetWrite_Ljava_nio_ByteBuffer_Handler:Java.Nio.Channels.IWritableByteChannelInvoker, Mono.Android, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null")>]
abstract member Write : Java.Nio.ByteBuffer -> int

パラメーター

src
ByteBuffer

バイトの取得元のバッファー

戻り値

書き込まれたバイト数 (場合によっては 0)

属性

例外

チャネルが書き込み用に開かれていた場合は 。

チャネルが既に閉じられている場合は 。

書き込み中に別のスレッドがチャネルを閉じる場合は 。

書き込み中に別のスレッドが呼び出し元のスレッドを中断した場合。

別の IO 例外が発生し、詳細がメッセージに表示されます。

注釈

指定されたバッファーからこのチャネルにバイトシーケンスを書き込みます。

チャネルに最大 r バイトまで書き込もうとします。ここで、 r はバッファーに残っているバイト数 (つまり、 src.remaining()このメソッドが呼び出された時点のバイト数) です。

長さ n のバイト シーケンスが書き込まれるとします。ここで 0 、nbsp&;<= nbsp を&します。n <= r. このバイト シーケンスは、インデックス p から始まるバッファーから転送されます。ここで、 p は、このメソッドが呼び出された時点でのバッファーの位置です。書き込まれた最後のバイトのインデックスは nbsp&p になります。+ n - nbsp;1を&します。 返されると、バッファーの位置は p  と等しくなります。+ n;その制限は変更されません。

特に指定しない限り、書き込み操作 は、要求 されたすべてのバイトを書き込んだ後にのみを返します。 一部の種類のチャネルは、その状態に応じて、一部のバイトのみを書き込んだり、まったく書き込んだりしない場合があります。 たとえば、非ブロッキング モードのソケット チャネルは、ソケットの出力バッファーで空きバイト数を超えるバイトを書き込むことができません。

このメソッドは、いつでも呼び出すことができます。 ただし、別のスレッドがこのチャネルで既に書き込み操作を開始している場合、このメソッドの呼び出しは、最初の操作が完了するまでブロックされます。

の Java ドキュメント java.nio.channels.WritableByteChannel.write(java.nio.ByteBuffer)

このページの一部は、によって作成および共有され、に記載されている条件に従って使用される作業に基づく変更です。

適用対象