求C# 16进制和字节数组互转代码

将任意字符串转化为16进制格式(如:你好==>%C4%E3%BA%C3,%C4%E3%BA%C3==>你好),求具体C#代码,最好带注释的,如果代码好就追加分数哦!... 将任意字符串转化为16进制格式(如 :你好==>%C4%E3%BA%C3,%C4%E3%BA%C3==>你好),求具体C#代码,最好带注释的,如果代码好就追加分数哦! 展开
 我来答
xx_lzj
2008-06-29 · TA获得超过970个赞
知道大有可为答主
回答量:578
采纳率:0%
帮助的人:734万
展开全部
private string StringToHexString(string s,Encoding encode)
{
byte[] b = encode.GetBytes(s);//按照指定编码将string编程字节数组
string result = string.Empty;
for (int i = 0; i < b.Length; i++)//逐字节变为16进制字符,以%隔开
{
result += "%"+Convert.ToString(b[i], 16);
}
return result;
}
private string HexStringToString(string hs, Encoding encode)
{
//以%分割字符串,并去掉空字符
string[] chars = hs.Split(new char[]{'%'},StringSplitOptions.RemoveEmptyEntries);
byte[] b = new byte[chars.Length];
//逐个字符变为16进制字节数据
for (int i = 0; i < chars.Length; i++)
{
b[i] = Convert.ToByte(chars[i], 16);
}
//按照指定编码将字节数组变为字符串
return encode.GetString(b);
}
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式