首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > .NET Framework >

将字符串转换为字节数组的算法解决办法

2014-03-30 
将字符串转换为字节数组的算法问大家一个问题,随便拿过来一个字符串,用什么算法可以转成一个字节数组,然后

将字符串转换为字节数组的算法
问大家一个问题,随便拿过来一个字符串,用什么算法可以转成一个字节数组,然后还能从字节数组恢复过来呢,别跟我说.net或java中有现成的算法啊,那个我早知道了,我只是想知道跟语言无关的一个通用算法,先谢谢大家了,请路过的高手不吝指点一下
[解决办法]
每个字符串有n个字符组成,每个字符都对应ascii,每个ascii可转成字节,当然汉字要特殊处理,下面代码没考虑汉字的情况,需要特殊处理 

   string a = "abcdef";
            byte[] b = new byte[a.Length];
            int i = 0;
            foreach (char c in a)
            {
                b[i] = (byte)(c);
                i++;
            }


[解决办法]

string a = "abc中文";
char[] b = a.ToCharArray();
string c = new string(b);

[解决办法]
引用:
就是因为有汉字,而且我的内容可能在网络上传输,最终要形成字节的字符串的,所以我才考虑恢复的问题


汉字也有ascii码(负数),可以转成两个字节,也很简单的,数组根据ascii是否是负数来偏移
[解决办法]
字符串转字节数组,本来就与无言无关,需要双方统一编码规范,比如UFT-8
[解决办法]
try

Encoding.Unicode.GetBytes(string)

热点排行