Вычислить фактический размер данных с длиной строки в кодировке Base64

Данные, закодированные как строка с кодировкой Base64, можно каким-то образом рассчитать фактическую длину необработанных данных, которые были закодированы, только просмотрев длину строки, кодированной Base64?

Я не хочу пересекать строку, если это не необходимо (это также включает в себя операции с строками на символах перемещения кодированной строки для проверки заполнения).

Ответ 1

Точная длина не может быть рассчитана, если вы не посмотрите на заполнение. Не смотря на прописку, лучшее, что вы можете сделать, это рассчитать верхнюю границу длины, умножив длину кодированной строки на 3/4 (гарантированная степень кодирования будет точно делиться на 4).

Верхняя граница, вычисленная таким образом, будет либо N, N+1, либо N+2, где N - длина необработанных данных.