古典的なランダムアクセスファイルをパフォーマンスを犠牲にせずに
実現する方法ってないかな?

つまり、プリミティブな値型(int とかfloatとか)のみをフィールドにもつ構造体sがあるとして、
このsが一次元配列状に数珠繋ぎに記録されるようなファイルの読み書き、
具体的には任意位置からsまたはsの配列として読み書きをしたいんですが。

BitConverter使って構造体とバイト配列を相互変換すればとりあえずの実現はできそうだけど、
これだといかにも効率が悪そうだし。。

この辺とか読むと、.NETでもsの配列のようなものは単純に連続した領域にフィールドの
バイナリイメージが書かれるようにできるようだから、なにか効率的な方法が
あってもよいように思うんだけど。
http://msdn2.microsoft.com/ja-jp/library/75dwhxf7(VS.80).aspx