比較的新しいC#であればnum[1..3]
の様に配列の一部を取り出すことが出来ますが、最近mono環境の少し古いC#を使っているので、Linqを使って同じような処理を行う方法を調べてみました。
class Program
{
static void Main()
{
byte[] byteArray = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9};
int start = 1;
int end = 3;
int length = end - start + 1;
var s = byteArray.Skip(start).Take(length);
Console.WriteLine("result:{0}", String.Join(",", s));
}
}
結果
result:1,2,3
Skipで配列のインデックスを移動し、Takeで必要な数分だけ要素を取り出すイメージになります。
コメント