为什么我用md5加密出来的结果字符串是31位的呢?
public   static   string   MD5Encrypt(string   str) 
 		{ 
 			MD5   md5   =   new   MD5CryptoServiceProvider(); 
 			byte[]   bstr   =   System.Text.Encoding.UTF8.GetBytes(str); 
 			byte[]   reb; 
 			reb=md5.ComputeHash(bstr); 
 			string   restr= " "; 
 			Console.WriteLine(reb.Length); 
 			for(int   i=0;i <reb.Length;i++) 
 			{ 
 				restr+=reb[i].ToString( "X "); 
 			} 
 			return   restr; 
 		}   
 md5加密以后出来的结果不是应该是32么?为什么我这儿出来的结果是31位的呢?
------解决方案--------------------按照你的代码 reb里面应该是128位的16进制数据 
 不知道你转成字符串的时候会不会有问题 
 标准的format 是X2 或者x2 ,你的是X