2013-10-09 18 views
0
short[] sArray = new short[100]; 

sArray [100]中的許多16位數據,所以我想用BinaryWriter類寫入。如何使用短的[]到BinaryWriter?

但是BinaryWriter只寫入(byte [])和寫入(char [])。

如何將16位(short [])數據寫入文件?

回答

3

您需要使用BinaryWriter.Write(short) Method分別編寫每個值。

寫作:

binaryWriter.Write(sArray.Length); // BinaryWriter.Write(Int32) overload 
for (int i = 0; i < sArray.Length; i++) 
{ 
    binaryWriter.Write(sArray[i]); // BinaryWriter.Write(Int16) overload 
} 

閱讀:

short[] result = new short[binaryReader.ReadInt32()]; 
for (int i = 0; i < result.Length; i++) 
{ 
    result[i] = binaryReader.ReadInt16(); 
} 
+0

謝謝回答。 但是寫:for(int i = 0; i 編譯錯誤:過載錯誤 sArray [i]數據是短的數據... – user2853714

+0

我測試了代碼,它在我的機器上工作。 – dtb