BitConverter - C#
Формулировка задачи:
Есть массив байтов(с модема) Известно, что первые 2 баита содержат идентификационныи номер, третий байт - число, определяющее количество байтов данных, в остальных баитах - сами данные.
Как преобразовать эти байты в строки и положить их в DataGridView? Пробую через BitConverter.ToString, но не получается. Подскажите,пожалуйста! Спасибо!
Решение задачи: «BitConverter»
textual
Листинг программы
int i =0;
while ((op.stroka.IndexOf("END")) == -1)
{
if (i >= dataGridView1.RowCount)
{
// Если нам необходима новая строка добавляем её
dataGridView1.Rows.Add(); // Для вставки в конкретное место используйте Insert
}
// Тут у вас что-то происходит
int ID = Convert.ToInt32(array[0]) + Convert.ToInt32(array[1]); // Получаем ID из суммы первого и второго байта
int length = Convert.ToInt32(array[2]); // получаем длину данных из 3-го байта
byte[] data = new byte[length]; // создаем массив байтов, в котором будут храниться данные, нужной длины
array.CopyTo(data, 3); // заполняем массив данными
dataGridView1.Rows[i].Cells[0].Value = ID; //
dataGridView1.Rows[i].Cells[1].Value = length;
dataGridView1.Rows[i].Cells[2].Value = Encoding.ASCII.GetString(data);
// Тут снова что-то происходит
i++;
}