Sto convertendo l'array 2dimensional in Single dimensional in C#. Ricevo l'array bidimensionale dal dispositivo (C++) e quindi lo converto in 1 dimensionale in C#. Ecco il mio codice:Conversione di array bidimensionali in monodimensionale in C#?
int iSize = Marshal.SizeOf(stTransactionLogInfo); //stTransactionLogInfo is a structure
byte[,] bData = (byte[,])objTransLog; //objTransLog is 2 dimensionl array from device
byte[] baData = new byte[iSize];
for (int i = 0; i < bData.GetLength(0); i++)
{
for (int j = 0; j < iSize; j++)
{
baData[j] = bData[i, j];
}
}
ottengo il risultato desiderato dall'alto codice, ma il problema è che non è il modo standard di implementazione. Voglio sapere come può essere fatto in un modo standard. Potrebbe fare Marshalling, non sono sicuro. Grazie in anticipo.
Perché pensi che non sia il modo standard? Mi sta bene. –