Мне нужна эта строка кода Java:Преобразовать эту строку Java кода C# код
Integer.toString(256 + (0xFF & arrayOfByte[i]), 16).substring(1)
преобразуется в C#, так как я не знаю, как работать с «0xFF».
EDIT Это полный код:
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));
}
Он должен быть просто «0xFF», поскольку AFAIK слишком мал и не имеет установленного MSB, поэтому не нужно «неумело». – hexafraction
'0xFF = 255' ,,,, – johnchen902
Вы, по крайней мере, можете следовать коду. Вы увидите, что 0xFF - это маска для всех, что находится в arrayOfByte [i]. Если в массиве больше байта, я не вижу причины его использовать. – asafreedman