Example #1
0
                private void InitEncoder(byte[] input)
                {
                    Base64Encoding.BuidLookupTableDictionnary();
                    source = input;
                    length = input.Length;

                    if ((length % 3) == 0)
                    {
                        paddingCount = 0;
                        blockCount   = length / 3;
                    }
                    else
                    {
                        paddingCount = 3 - (length % 3);//need to add padding
                        blockCount   = (length + paddingCount) / 3;
                    }
                    length2 = length + paddingCount;//or blockCount *3
                }
Example #2
0
                private void InitDecoder(char[] input)
                {
                    Base64Encoding.BuidLookupTableDictionnary();
                    input = Base64Encoding.DeleteUnvalidChars(input);

                    int temp = 0;

                    source = input;
                    length = input.Length;

                    for (int i = 0; i < 2; i++)
                    {
                        if (input[length - i - 1] == '=')
                        {
                            temp++;
                        }
                    }
                    paddingCount = temp;
                    blockCount   = length / 4;
                    length2      = blockCount * 3;
                }