int to Hex byte

C# 2021. 10. 19. 17:28

using System;
using System.Threading;
using System.Collections.Generic;


namespace NetHappy
{
    class Program
    {
        static Dictionary<byte, int> dicCmdDatalength = new Dictionary<byte, int>();
        static void Main(string[] args)
        {
            dicCmdDatalength.Add(0xf4, 16);
            int[] wheelSpeed = { -1, -1, 1000, 1000 };
            byte[] value = InputData(wheelSpeed, 0xf4);

            string strValue = BitConverter.ToString(value);
            Console.WriteLine(strValue);
        }

        static byte[] InputData(int[] data, byte cmd)
        {
            int length = dicCmdDatalength[cmd];
            byte[] result = new byte[length + 5];//+ 5 = STX, STX, CMD, DataLength, ETX
            byte[] value= new byte[4];
            result[0] = 0x55;
            result[1] = 0x55;
            result[2] = cmd;
            result[3] = Convert.ToByte(length);

            int k = 4;
            for(int i = 0; i < 4; i++)
            {
                value = BitConverter.GetBytes(data[i]);
                for(int j = 0; j < 4; j++)
                {
                    result[k] = value[j];
                    k++;
                }
            }
            result[result.Length - 1] = 0xAA;

            return result;
        }
    }
}

: