C#string[]和Byte[]相互转换

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/m0_37137902/article/details/88366516
        /// <summary>
        /// string[]-->buffer[]
        /// </summary>
        /// <param name="msg"></param>
        public byte[] StringArrayToBufferArray(string[] array)
        {
            byte[] buffer = new byte[1024];
            using (MemoryStream stream = new MemoryStream())
            {
                using (BinaryWriter wr = new BinaryWriter(stream))
                {
                    for (int i = 0; i < array.Length; i++)
                    {
                        wr.Write(array[i]);
                    }
                }
                //转换成字节数组,用于Socket发送
                buffer = stream.ToArray();
                return buffer;
            }
        }

        /// <summary>
        /// byetp[]-->string[]
        /// </summary>
        /// <param name="buffer"></param>
        /// <param name="count">数组长度</param>
        /// <returns></returns>
        public string[] BufferArrayTOStringArray(byte[] buffer, int count)
        {
            List<string> list = new List<string>();
            using (MemoryStream stream = new MemoryStream(buffer))
            {
                using (BinaryReader rd = new BinaryReader(stream))
                {
                    try
                    {
                        while (stream.Position < stream.Length)
                        {
                            if (list.Count < count)
                            {
                                list.Add(rd.ReadString());
                            }
                            else
                            {
                                break;
                            }
                        }
                        rd.Close();
                    }
                    catch (Exception ex)
                    {

                    }
                }
                string[] array = list.ToArray();
                return array;
            }
        }

        /// <summary>
        /// string->string[]
        /// </summary>
        /// <param name="strarry"></param>
        /// <returns></returns>
        public string StringArryToString(string[] strarry)
        {
            string str = "";
            for (int i = 0; i < strarry.Length; i++)
            {
                str += strarry[i];
            }
            return str;
        }

猜你喜欢

转载自blog.csdn.net/m0_37137902/article/details/88366516
今日推荐