Могу ли я превратить Base85 в URL-адрес данных? Если так, то как?
Недавно я узнал о гораздо более эффективной версии base, называемой Ascii85 (или Base85), и, как видно, она гораздо более эффективна для хранения, чем, скажем, Base64 или Uuencode:
Это в Base85:
- Привет =
BOu!rDZ
Это в Base64:
- Привет =
SGVsbG8=
Итак, мне было интересно, можно ли превратить файлы в Base85 и можно ли сделать URL-адреса данных из указанных кодов файлов Base85. Если это так, то это революционизирует мою платформу кодирования и приведет к сокращению этих огромных источников файлов Base64 на большую сумму.
Если вышеприведенное возможно, есть ли средство для создания URL-адресов для данных?
2 ответа
Итак, мне было интересно, если это возможно, чтобы превратить файлы в Base85
Да. Но если вы собираетесь хранить их как файлы, самый эффективный способ их кодирования - вообще не кодировать.
и если возможно сделать URL данных из указанных кодов файлов Base85
Нет. Base64 - единственная поддерживаемая кодировка data:
URL - это определено как особый случай в RFC 2397.
Конечно да. Мы знаем способ кодирования и декодирования каждого из этих кодирований, поэтому данные base64 могут быть преобразованы обратно в обычные данные, которые, в свою очередь, будут преобразованы в base85.
SGVsbG8= → Hello → BOu!rDZ
Также обратите внимание, что существуют другие более эффективные кодировки, чем base85, с более быстрой скоростью кодирования / декодирования. Например, base91 может быть закодирован / декодирован с помощью справочной таблицы, а base122 является чисто двоичным кодированием. OTOH base85 всегда нуждается в умножении / делении для кодирования / декодирования
Однако в зависимости от того, где вы хотите использовать разные кодировки, эффективность может быть разной. Например, внутри html-файлов есть некоторые запрещенные символы, поэтому base95 требуется экранирование, которое может быть хуже, чем само base64. Точно так же в URL разрешены только некоторые символы, другие будут закодированы %
что даже больше, чем исходные данные