Пример #1
0
        public Base64Converter(Encoding encoding)
        {
            var charSet = new Base64EncodedCharacterSet(encoding);

            _encoder = new Base64BufferEncoder(charSet);
            _decoder = new Base64BufferDecoder(charSet);
        }
Пример #2
0
        public Base64CharacterMap(Base64EncodedCharacterSet charSet)
        {
            _map = new byte[123];
            var chars = charSet.Chars;

            for (byte i = 0; i < chars.Length; i++)
            {
                _map[chars[i]] = i;
            }
        }
Пример #3
0
        public static IBase64CharacterMap Create(Base64EncodedCharacterSet charSet)
        {
            if (charSet.CharSize == 1)
            {
                return(new Base64CharacterMap(charSet));
            }

            if (charSet.CharSize == 2)
            {
                return(new Base64TwoCharacterMap(charSet));
            }

            if (charSet.CharSize == 4)
            {
                return(new Base64FourCharacterMap(charSet));
            }

            throw new NotSupportedException($"Encodings with character size {charSet.CharSize} is currently not supported.");
        }
Пример #4
0
 public Base64BufferEncoder(Base64EncodedCharacterSet charSet)
 {
     _chars       = charSet.Chars;
     _paddingChar = charSet.PaddingChar;
     _charSize    = charSet.CharSize;
 }
Пример #5
0
 public Base64BufferDecoder(Base64EncodedCharacterSet charSet)
 {
     _paddingChar = charSet.PaddingChar;
     _charSize    = charSet.CharSize;
     _map         = Base64CharacterMap.Create(charSet);
 }