16进制,字符串,表之间的转换

来源:互联网 发布:socket网络通信流程图 编辑:程序博客网 时间:2024/06/06 12:47
        
/// <summary>        /// 字符串转换成Hex        /// </summary>        /// <param name="value"></param>        /// <returns>返回字符串</returns>        public static string ConvertStringToHex(string value)        {            try            {                string result = string.Empty;                byte[] str = System.Text.Encoding.GetEncoding("GB2312").GetBytes(value);//默认GB2312                for (int i = 0; i < str.Length; i++)                {                    result += str[i].ToString("X2");                }                return result;            }            catch (Exception ex)            {                throw new Exception(ex.Message);            }        }        /// <summary>        /// Hex-->Byte        /// </summary>        /// <param name="data"></param>        /// <returns>返回16进制数组</returns>        public static byte[] ConvertHexStringToByte(string data)        {             byte[] buf=new byte[data.Length/2];            for (int i = 0; i < data.Length/2; i++)            {                string da = data.Substring(2*i,2);                buf[i] = Convert.ToByte(da,16);            }            return buf;        }     /// <summary>    /// 表中数据转换成string类型    /// </summary>    /// <param name="dtIds"></param>    /// <returns>返回字符串</returns>    public static string DataTableChangeToString(DataTable dtIds)    {        StringBuilder sbId = new StringBuilder();        for (int i = 0; i < dtIds.Rows.Count; i++)        {            DataRow row = dtIds.Rows[i];            if (i > 0)            {                sbId.Append(",");            }            for (int j = 0; j < dtIds.Columns.Count; j++)            {                if (j > 0)                {                    sbId.Append(",");                }                sbId.Append(Convert.ToString(row[j]));            }        }        string ids = sbId.ToString();        return ids;    }