【发布时间】:2011-06-02 13:48:40
【问题描述】:
我想将一些整数转换为十六进制,但我得到的是这样的:"?|???plL4?h??N{" from 12345. 为什么?
int t = 12345;
System.Security.Cryptography.MD5CryptoServiceProvider ano = new
System.Security.Cryptography.MD5CryptoServiceProvider();
byte[] d_ano = System.Text.Encoding.ASCII.GetBytes(t.ToString());
byte[] d_d_ano = ano.ComputeHash(d_ano);
string st_data1 = System.Text.Encoding.ASCII.GetString(d_d_ano);
string st_data = st_data1.ToString();
我以窗口形式使用它,而不是在控制台中。
【问题讨论】:
-
是什么让您认为这会将 int 转换为 hex?
-
MD5 是一种散列算法。它不会返回整数的十六进制值。
-
所以这不是必需品吗?我不明白。我应该只使用 Babak 方式将 int 转换为字符串?
-
您实际上想要完成什么? “十六进制”是数字的十六进制表示法,当数字被写为人类可读的字符串时。它只是你需要的字符串吗?如果是,那么您不需要任何 MD5。
-
但我想将我的 int 更改为另一个用户不知道的数字。我只想获取新数字的十六进制...