TCP通讯中字符设计有关问题

TCP通讯中字符设计问题
初次接触
有数据,  0025E4A62141 
要通过BYTE数组发送到远端程序中(socket, tcp协议)
直接发字符串链接传送我会写
如果是要通过byte数组,该怎么写?

                byte[] bs = new byte[7];
                bs[0] = 0xFE; 
                bs[1] = byte.Parse("00");
                bs[2] = byte.Parse("25");
                bs[3] = byte.Parse("E4");
                bs[4] = byte.Parse("A6");
                bs[5] = byte.Parse("21");
                bs[6] = byte.Parse("41");

是否我先这样把数据分割好,再放到byte数组里??如果这样的话,数据长一点不是byte数组长度要很长了?

------解决思路----------------------
写个循环,将字符串分割,然后转成byte数组
byte数组很长怎么了,你直接发字符串难道就不长了吗,在底层其实也是转成byte数组再发的
------解决思路----------------------
byte[] bs=new byte[1024];
就好了,不要太吝啬
反正你真正发送的时候,还要再传入参数,到底发送多少个字节,不会因为你定义的数组大,就把无用数据都给发出去了
------解决思路----------------------
List<byte> blist = new List<byte>();
            foreach (var parm in YourParm)
            {
                blist.Add(byte.Parse(parm));
            }
            blist.ToArray();

------解决思路----------------------
            string str = "0025E4A62141";
            List<byte> bytes = new List<byte>();
            bytes.Add(0xFE);
            for (int i = 0; i < str.Length; i += 2)
            {
                string hexStr = str.Substring(i, 2);
                byte data = Convert.ToByte(hexStr, 16);
                bytes.Add(data);
            }

            byte[] realData = bytes.ToArray();

realData就是处理后的数据  能实现你的效果 前提是 hex别超过0xFF 而且str是2的倍数