【发布时间】:2010-08-27 17:22:12
【问题描述】:
我需要处理一个二进制资源(二进制文件的内容)。该文件包含短裤。我不知道如何将访问该资源的结果转换为一个短数组:
short[] indexTable = Properties.Resources.IndexTable;
不起作用;我只能用
byte[] indexTable = Properties.Resources.IndexTable;
使用Array.Copy 不起作用,因为它会将访问资源返回的数组中的每个字节转换为短字节。
请问我该如何解决这个问题(除了手动转换字节数组)?有没有办法告诉 C# 资源的类型是 short[] 而不是 byte[]?
我什至尝试编辑项目的 resx 文件并将资源的数据类型更改为 System.UInt16,但随后我收到错误消息,现在可以为它们找到构造函数。
使用 VS 2010 Express 和 .NET 4.0。
【问题讨论】:
-
二进制文件包含字节,而不是短裤。 short 是一种系统特定的结构,可以将字节解释为,就像字节可以解释为文本、图片或您在计算机上看到的任何其他内容一样。
-
为什么不直接使用字节数组??就像@Jimmy Hoffa 所说的文件包含字节。
-
吉米,这些文件当然包含字节。我希望它的内容被解释为 ushort,这意味着我需要以某种方式将它放入一个 ushort 数组中。
标签: c#