関数から関数に渡される MemoryStream オブジェクトがあり、各関数がそれに何かを追加します (バイトはそれ以上になる可能性があります)。
read には一致する関数があります。
自分でオフセットを更新するのを避けて、「ストリーム」に処理させることはできますか?
( にstream.Write(byte[]);
似ているなどstream.WriteByte(byte);
)
この分野のすべてのドキュメントから少し混乱しています
関数から関数に渡される MemoryStream オブジェクトがあり、各関数がそれに何かを追加します (バイトはそれ以上になる可能性があります)。
read には一致する関数があります。
自分でオフセットを更新するのを避けて、「ストリーム」に処理させることはできますか?
( にstream.Write(byte[]);
似ているなどstream.WriteByte(byte);
)
この分野のすべてのドキュメントから少し混乱しています
はい、常にオフセットを 0 に設定する拡張メソッドを作成できます(つまり、バッファ内のゼロ インデックスから書き込みます)。
public static class Extensions
{
public static void Write(this MemoryStream stream, byte[] buffer)
{
stream.Write(buffer, 0, buffer.Length);
}
}
はい、オフセットを渡すことを避けることができます。
メモリ ストリームに書き込むと、そのPosition
プロパティは書き込まれたアイテムのサイズだけインクリメントされるため、次に書き込まれるのは前のアイテムの後に続きます。
したがって、メモリ ストリームを渡すことができます。