小智 57
以字节数组大小的一半创建短数组,并将字节数据复制到:
short[] sdata = new short[(int)Math.Ceiling(data.Length / 2)];
Buffer.BlockCopy(data, 0, sdata, 0, data.Length);
Run Code Online (Sandbox Code Playgroud)
这是迄今为止最快的方法.
jas*_*son 12
一种可能性是使用Enumerable.Select:
byte[] bytes;
var shorts = bytes.Select(b => (short)b).ToArray();
Run Code Online (Sandbox Code Playgroud)
另一种是使用Array.ConvertAll:
byte[] bytes;
var shorts = Array.ConvertAll(bytes, b => (short)b);
Run Code Online (Sandbox Code Playgroud)
小智 5
shorthard 是两个字节的组合。如果您将所有短裤作为真正的短裤写入文件,那么这些转换是错误的。您必须使用两个字节来获取真正的短值,使用类似的方法:
short s = (short)(bytes[0] | (bytes[1] << 8))
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
32142 次 |
| 最近记录: |