在我们的应用程序中,我们有一个非常大的字节数组,我们必须将这些字节转换为不同的类型.目前,我们BitConverter.ToXXXX()用于此目的.我们的重击手是,ToInt16和ToUInt64.
因为UInt64,我们的问题是数据流实际上有6个字节的数据来表示一个大整数.由于没有将6字节数据转换为的本机函数UInt64,我们可以:
UInt64 value = BitConverter.ToUInt64() & 0x0000ffffffffffff;
Run Code Online (Sandbox Code Playgroud)
我们的使用ToInt16更简单,不必做任何操作.
我们在这两个操作中做了很多,我想问SO社区是否有更快的方法来进行这些转换.现在,这两个功能消耗了我们整个CPU周期的大约20%.