日期:2014-05-18  浏览次数:20898 次

数组 二进制数组 转换问题?
各位大虾:
        最近我遇到数组和二进制数组相互转换问题的问题,在网上找了很久都没有找到一个解决办法,请各位帮帮看看.谢谢,先!
        问题如下:
        有一个数组(类型可以是int,float,double),怎样将它转换成byte[]类型,同时、又如何将byte[]类型转换成对应的(int,float,double)数组.
        请各位帮帮忙!

------解决方案--------------------
这两分还不好混-_-!!!
再给一个方案:

byte[] B = new byte[] { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06,
0x07, 0x08, 0x09, 0x0A, 0x0B };
int[] A = new int[3];
MemoryStream vMemoryStream = new MemoryStream();
Marshal.Copy(B, 0, Marshal.UnsafeAddrOfPinnedArrayElement(A, 0), B.Length);
Console.WriteLine( "a[0]={0:X},a[1]={1:X},a[2]={2:X} ", A[0], A[1], A[2]);

A[0] = 0x01234501;
A[1] = 0x01234502;
A[2] = 0x01234503;
Marshal.Copy(A, 0, Marshal.UnsafeAddrOfPinnedArrayElement(B, 0), A.Length);
Console.WriteLine(BitConverter.ToString(B));