首页 新闻 搜索 专区 学院

byte[] 的长度。

0
悬赏园豆:5 [已解决问题] 解决于 2010-08-30 20:24

有一个关于byte[] 的长度问题。

        public static string CreateSalt(int size)
        {
            RNGCryptoServiceProvider rng = new RNGCryptoServiceProvider();
            byte[] buff = new byte[size];
            rng.GetBytes(buff);
            return Convert.ToBase64String(buff);//返回Base64字符串表示形式的随机数
        }

我给size指定是8,为什么返回的是一个12位的字符串??

piaopiaoran的主页 piaopiaoran | 初学一级 | 园豆:133
提问于:2010-08-28 16:40
< >
分享
最佳答案
0

因为使用了ToBase64String,长度会变长  

收获园豆:5
Gray Zhang | 专家六级 |园豆:17610 | 2010-08-28 16:44
我想获得固定长度为8的随机字符串,该怎么弄?
piaopiaoran | 园豆:133 (初学一级) | 2010-08-28 16:54
size是6就会给长度为8的,Base64以后长度是length * 1.5
Gray Zhang | 园豆:17610 (专家六级) | 2010-08-28 16:59
其他回答(2)
0

Base64是用于网络传输的,你应该使用HEX字符串。

Launcher | 园豆:45045 (高人七级) | 2010-08-28 23:53
0

Convert.ToBase64String(buff).Substring(0, size);

 

收到截取一下不就可以了吗?何必那么死板呢?

慧☆星 | 园豆:5555 (大侠五级) | 2010-08-29 12:12
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册