System.Security.Cryptography.ToBase64Transform.TransformFinalBlock C# (CSharp) Method

TransformFinalBlock() public method

public TransformFinalBlock ( byte inputBuffer, int inputOffset, int inputCount ) : byte[]
inputBuffer byte
inputOffset int
inputCount int
return byte[]
        public byte[] TransformFinalBlock(byte[] inputBuffer, int inputOffset, int inputCount)
        {
            ValidateTransformBlock(inputBuffer, inputOffset, inputCount);

            // Convert.ToBase64CharArray already does padding, so all we have to check is that
            // the inputCount wasn't 0
            if (inputCount == 0)
            {
                return Array.Empty<byte>();
            }

            // Again, for now only a block at a time
            return ConvertToBase64(inputBuffer, inputOffset, inputCount);
        }

Usage Example

        /// <summary>
        /// Converts byte-array to Base64 string.
        /// </summary>
        /// <param name="inputBytes">Byte array to convert.</param>
        /// <returns>A Base64 string representing the input byte-array.</returns>
        static public string ToBase64String(byte[] inputBytes)
        {
            StringBuilder sb = new StringBuilder();
            ToBase64Transform base64Transform = new ToBase64Transform();
            byte[] outputBytes = new byte[base64Transform.OutputBlockSize];
            // Initializie the offset size.
            int inputOffset = 0;
            // Iterate through inputBytes transforming by blockSize.
            int inputBlockSize = base64Transform.InputBlockSize;
            while ((inputBytes.Length - inputOffset) > inputBlockSize)
            {
                base64Transform.TransformBlock(
                    inputBytes, inputOffset, inputBlockSize, outputBytes, 0);

                inputOffset += base64Transform.InputBlockSize;
                sb.Append(Encoding.UTF8.GetString(
                        outputBytes, 0, base64Transform.OutputBlockSize));
            }

            // Transform the final block of data.
            outputBytes = base64Transform.TransformFinalBlock(
                inputBytes, inputOffset, (inputBytes.Length - inputOffset));
            sb.Append(Encoding.UTF8.GetString(outputBytes, 0, outputBytes.Length));

            return sb.ToString();
        }
All Usage Examples Of System.Security.Cryptography.ToBase64Transform::TransformFinalBlock