public static byte[] DecodeFromHex(byte[] inputBytes, bool bUseSpaces) { FromHexTransform hexTransform = new FromHexTransform(); byte[] outputBytes = new byte[hexTransform.OutputBlockSize]; MemoryStream outputStream = new MemoryStream(); int i = 0; while (inputBytes.Length - i > hexTransform.InputBlockSize) { hexTransform.TransformBlock(inputBytes, i, hexTransform.InputBlockSize, outputBytes, 0); i += hexTransform.InputBlockSize; if (bUseSpaces) { i++; } outputStream.Write(outputBytes, 0, hexTransform.OutputBlockSize); } outputBytes = hexTransform.TransformFinalBlock(inputBytes, i, inputBytes.Length - i); outputStream.Write(outputBytes, 0, outputBytes.Length); //string strRet = System.Text.Encoding.UTF8.GetString(outputStream.ToArray()); byte[] arRet = outputStream.ToArray(); outputStream.Close(); return arRet; }
public static byte[] DecodeFromHex(byte[] inputBytes, bool bUseSpaces) { FromHexTransform hexTransform = new FromHexTransform(); byte[] outputBytes = new byte[hexTransform.OutputBlockSize]; MemoryStream outputStream = new MemoryStream(); int i = 0; while (inputBytes.Length - i > hexTransform.InputBlockSize) { hexTransform.TransformBlock(inputBytes, i, hexTransform.InputBlockSize, outputBytes, 0); i += hexTransform.InputBlockSize; if (bUseSpaces) { i++; } outputStream.Write(outputBytes, 0, hexTransform.OutputBlockSize); } outputBytes = hexTransform.TransformFinalBlock(inputBytes, i, inputBytes.Length - i); outputStream.Write(outputBytes, 0, outputBytes.Length); //string strRet = System.Text.Encoding.UTF8.GetString(outputStream.ToArray()); byte[] arRet = outputStream.ToArray(); outputStream.Close(); return(arRet); }