0
short[] sArray = new short[100];

sArray[100] 中有很多 16 位数据,所以我想使用 BinaryWriter 类编写。

但是 BinaryWriter 只有 write(byte[]) 和 write(char[]) 。

如何将 16 位(short[])数据写入文件?

4

1 回答 1

3

您需要使用BinaryWriter.Write(short) 方法单独写入每个值。

写作:

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();
}
于 2013-10-09T11:17:18.433 回答