1
バイト[]を分割する必要があります。バイトを分割する方法[]
私は次のようになり、元バイト[]内のいくつかのデータがあります。
私は[]どこでも「0xc0では」存在するバイトを分割する方法をbyte[] m_B = new byte[] { 0x01, 0x02, 0x03, 0xc0, 0x04, 0x05, 0x06, 0xc0, 0x07, 0x08, 0x09 };
を?
バイト[]を分割する必要があります。バイトを分割する方法[]
私は次のようになり、元バイト[]内のいくつかのデータがあります。
私は[]どこでも「0xc0では」存在するバイトを分割する方法をbyte[] m_B = new byte[] { 0x01, 0x02, 0x03, 0xc0, 0x04, 0x05, 0x06, 0xc0, 0x07, 0x08, 0x09 };
を?
は、単にあなたのバッファの上に列挙し、あなたが分割するバイトに達するたびサブセットを返します。
IEnumerable<byte[]> Split(byte splitByte, byte[] buffer)
{
List<byte> bytes = new List<byte>();
foreach(byte b in buffer)
{
if (b != splitByte)
bytes.Add(b);
else
{
yield return bytes.ToArray();
bytes.Clear();
}
}
yield return bytes.ToArray();
}
代わりに 'ArraySegment
いくつかのソースを表示してください...あなたは何を試してみましたか?何がうまくいかないの? – Yahia
あなたの質問はWindowsフォームとは関係ありません。 –
なぜアレイを通過して0xc0に到達するまで他のものにコピーしていないのですか?それで、あなたが望むものなら何でもそれを行い、残りのシーケンスを続けます。 –