3
我有數據的形式爲如何將二維浮點數組轉換爲字節數組並反之亦然
float [1000,2]
數據。
我想以byte [] b的形式轉換數據。
我再次想byte []b
轉換爲float [1000,2]
數據
的2維數組我想這樣做,因爲我可以以字節的形式將數據保存到服務器,可輕鬆。
我有數據的形式爲如何將二維浮點數組轉換爲字節數組並反之亦然
float [1000,2]
數據。
我想以byte [] b的形式轉換數據。
我再次想byte []b
轉換爲float [1000,2]
數據
的2維數組我想這樣做,因爲我可以以字節的形式將數據保存到服務器,可輕鬆。
您可以使用這些方法。他們使用簡單的編程結構,我認爲不難理解它們。第一種方法將float 2Dimansional數組轉換爲一個字節數組。它首先聲明字節數組,然後每個浮點值轉換爲4個字節並將它們存儲到大字節數組中。
public byte[] ToByteArray(float[,] nmbs)
{
byte[] nmbsBytes = new byte[nmbs.GetLength(0) * nmbs.GetLength(1)*4];
int k = 0;
for (int i = 0; i < nmbs.GetLength(0); i++)
{
for (int j = 0; j < nmbs.GetLength(1); j++)
{
byte[] array = BitConverter.GetBytes(nmbs[i, j]);
for (int m = 0; m < array.Length; m++)
{
nmbsBytes[k++] = array[m];
}
}
}
return nmbsBytes;
}
第二種方法將字節數組轉換爲二維浮點數組。它首先聲明數組,然後每四個字節轉換爲浮點數,然後將其存儲到2D浮點數組中的指定位置。
public float[,] ToFloatArray(byte [] nmbsBytes)
{
float[,] nmbs = new float[nmbsBytes.Length /4/2, 2];
int k = 0;
for (int i = 0; i < nmbs.GetLength(0); i++)
{
for (int j = 0; j < nmbs.GetLength(1); j++)
{
nmbs[i, j] = BitConverter.ToSingle(nmbsBytes,k);
k += 4;
}
}
return nmbs;
}
非常感謝你 – 2013-03-20 12:25:40
http://stackoverflow.com/questions/4742910/converting-float-to-byte4-and-back-to-float-in-netmf – Serdalis 2013-03-20 11:46:34
重複你希望每個浮四個字節? – 2013-03-20 11:46:39
我想將二維浮點數組(float [1000,2]數據)轉換爲一維字節數組(平均字節[] b) – 2013-03-20 11:51:54