3

を使用してファイルバイトを読み取り、それを配列MemoryMappedFileに入れるにはどうすればよいですか?byte[]

4

1 に答える 1

6

ファイルの一部だけを読みたいと仮定すると、次のように動作するはずです。

long offset = 0x10000000; // 256 megabytes 
long length = 100; 
using (MemoryMappedFile mmf = MemoryMappedFile.CreateFromFile(@"c:\Test.data"))
    {
        using (MemoryMappedViewStream stream = CreateViewStream(offset, length))
        {
            byte[length] bytes;
            int bytesRead = stream.Read(bytes, 0, (int)length);
        }
    }

ファイル全体を読みたい場合はMemoryMappedFile、そもそもオブジェクトを使用するべきではありません。

于 2012-12-22T12:46:05.443 に答える