我需要这行Java代码:
Integer.toString(256 + (0xFF & arrayOfByte[i]), 16).substring(1)
Run Code Online (Sandbox Code Playgroud)
转换为C#,因为我不知道如何使用"0xFF".
编辑 这是完整的代码:
MessageDigest localMessageDigest = MessageDigest.getInstance("SHA-256");
localMessageDigest.update(String.format(Locale.US, "%s:%s", new Object[] { paramString1, paramString2 }).getBytes());
byte[] arrayOfByte = localMessageDigest.digest();
StringBuffer localStringBuffer = new StringBuffer();
for (int i = 0; ; i++)
{
if (i >= arrayOfByte.length)
return localStringBuffer.toString();
localStringBuffer.append(Integer.toString(256 + (0xFF & arrayOfByte[i]), 16).substring(1));
}
Run Code Online (Sandbox Code Playgroud)
在这方面,您在C#中实现此方法的实际方法如下.
String.Format("{0:x2}", arrayOfByte[i]);
Run Code Online (Sandbox Code Playgroud)
这与Java非常相似
String.format("%02x", arrayOfByte[i]);
Run Code Online (Sandbox Code Playgroud)
这是一种更简单的方法来完成他们上面所做的事情.
| 归档时间: |
|
| 查看次数: |
697 次 |
| 最近记录: |