У меня есть код, который возвращает массив байтов, который может быть один байт или более или менее. Проблема заключается в том, что когда я конвертирую байты несколько раз, я получаю сообщение об ошибке, потому что не могу определить, когда мне нужно использовать toInt32, toInt64 или toInt16. Другая проблема заключается в том, что иногда, когда я получаю один байт, я не могу преобразовать этот байт, используя указанные выше методы, потому что я продолжаю получать ошибки. Итак, как определить на основе длины или размера байтов, какой метод мне следует использовать.
//as in array of bytes byte[]
var response = this.cc.Sendcc("SERIAL_NUMBER", 0x05, 0x80, 0x64, 0x04, 0x01, 0x21, (byte)1, (byte)1);
if (response .Length == 1)
{
toInt32SerialNumber = BitConverter.ToInt16(response , 0);
}
else
{
toInt32SerialNumber = BitConverter.ToInt32(response , 1);
}