2013-12-20 136 views

回答

6

我認爲BinaryReader是你想要的。

像這樣將是等效(假設data是一個字節數組):

using (var stream = new MemoryStream(data)) { 
    using (var reader = new BinaryReader(stream)) { 
     stream.Seek(2, SeekOrigin.Begin); 

     var value1 = reader.ReadInt16(); 
     var value2 = reader.ReadInt16(); 
    } 
} 

這應該跳過前2個字節,那麼接下來的4個字節加載到2個short變量。

+0

有一件事可以咬你BinaryReader:它有固定的排序。解壓函數可以讓你指定不同的字節順序,但.NET並不容易。如果你需要控制它,你必須求助於使用流,可能是Array.Reverse()和BitConverter。 – OwenP