「膨大な」量のデータがあり、50〜100メガバイトの間で変動する可能性があります。ファイルストリーマーを使用して、このデータをバイトの配列として読み込みました。
問題は、連続するすべての2バイトを整数に変換したいということです。これを行う方法は、ステップサイズが2のバイトの配列をループしてから、BitConvertを使用して変換を行うことです。
_data[i] = BitConverter.ToInt16(soundData[i : i + 2], 0) // Convert 2 bytes into an int and store at i
したがって、各2バイトはInt16に変換されます。ただし、問題はこれが遅すぎることです。約50メガバイトのファイルの場合、これには20秒かかる可能性があります。
データ配列の2バイトごとにこの関数を呼び出す代わりに、これを即座に実行する一般的な方法はありますか?できれば「安全な」方法で、安全でないコードは使用しないでください。