Текстовый компрессор LZ-String
Сжимайте текст через LZ77/LZ-String онлайн бесплатно — идеально для localStorage, cookie и состояния в URL. Выберите вывод Base64, UTF-16 (оптимизирован для localStorage) или URI Component. Всё работает в вашем браузере, поэтому текст никогда не покидает устройство. Без регистрации.
Best for general use, JSON storage, and API payloads. URL-safe with padding.
Зачем использовать наш текстовый компрессор LZ-String?
- Мгновенное сжатие LZ-String: наш текстовый компрессор LZ-String обрабатывает текст сразу в браузере — без обращений к серверу и ожидания. Сжимайте JSON, данные localStorage, состояние в URL и любые строки в Base64, UTF-16 или URI Component за миллисекунды.
- Безопасный онлайн компрессор LZ-String: ваш текст никогда не покидает устройство. Наш онлайн компрессор LZ-String выполняется целиком на стороне клиента на JavaScript — никакие данные не отправляются на сервер. Безопасно сжимайте чувствительные JSON-нагрузки, пользовательские данные или строки конфигурации без риска для приватности.
- Компрессор LZ-String онлайн без установки: используйте наш текстовый компрессор LZ-String прямо в любом современном браузере — Chrome, Firefox, Safari или Edge. Без npm install, Node.js и плагинов. Работает на компьютере и мобильных без настройки.
- 100 % бесплатно навсегда: используйте наш компрессор LZ-String совершенно бесплатно — без скрытых платежей, регистрации, рекламы и ограничений. Сжимайте и распаковывайте текст онлайн сколько нужно — для личных проектов, работы или корпоративного использования. Бесплатно навсегда.
Что такое сжатие LZ-String?
LZ-String — это JavaScript-библиотека сжатия текста на основе алгоритма LZ77 (Lempel-Ziv 1977), который находит повторяющиеся подстроки и заменяет их ссылками на предыдущие вхождения. В отличие от GZIP, созданного для сжатия файлов, сжатие lz-string оптимизировано именно для сжатия текстовых строк в среде JavaScript — прежде всего для хранения сжатых данных в localStorage , cookie и параметрах URL. Наш бесплатный онлайн текстовый компрессор LZ-String реализует полный алгоритм LZ-String на чистом TypeScript и работает целиком в вашем браузере без внешних зависимостей и загрузки на сервер.
Как работает наш текстовый компрессор LZ-String
- Вставьте или загрузите текст: введите текст прямо в поле ввода или нажмите «Загрузить файл», чтобы выбрать .txt, .json, .csv или любой текстовый файл. Наш онлайн компрессор LZ-String принимает любую строку.
- Выберите формат и режим: укажите формат вывода (Base64, UTF-16 или URI Component) и режим — сжатие или распаковка. Вся обработка идёт локально в браузере: текст никогда не покидает устройство.
- Скопируйте или скачайте результат: нажмите «Сжать текст», и результат сразу появится в панели вывода. Скопируйте его в буфер обмена одним кликом или скачайте файлом .txt для использования в приложении.
Сравнение форматов вывода
- Base64: кодирует 6 бит на символ стандартным алфавитом Base64. Лучше всего для общего использования, хранения JSON, нагрузок API и любых контекстов, где нужен ASCII-безопасный вывод. Включает символы дополнения (=).
- UTF-16: кодирует 15 бит на символ в полном диапазоне Unicode. Даёт самый маленький результат для localStorage: строки JavaScript внутри хранятся как UTF-16, поэтому этот формат максимизирует плотность хранения.
- URI Component: кодирует 6 бит на символ безопасным для URL алфавитом (без дополнения). Идеален для параметров запроса, фрагментов и ссылок, которыми можно поделиться, где сжатая строка должна быть безопасной для URL.
- Распаковка: выберите тот же формат, что и при сжатии, и переключитесь в режим распаковки, чтобы восстановить исходный текст. Формат должен совпадать точно: сжатый в Base64 текст нельзя распаковать декодером UTF-16.
Когда сжатие LZ-String наиболее эффективно
Сжатие LZ-String лучше всего работает с текстом, содержащим повторяющиеся шаблоны: JSON-объектами с повторяющимися ключами, HTML с повторяющимися тегами, CSV с повторяющимися значениями и объектами конфигурации с похожей структурой. Типичные степени сжатия — 40–70 % для структурированного JSON и 50–80 % для HTML. Очень короткие строки (менее ~50 символов) или уже сжатые данные (изображения в Base64, зашифрованные строки) могут сжиматься плохо: из-за накладных расходов LZ-String результат может оказаться больше ввода для текста с малым числом повторов. Это ожидаемое поведение.
Часто задаваемые вопросы
Текстовый компрессор LZ-String — это инструмент, сжимающий строки текста алгоритмом LZ77 и выдающий компактный закодированный результат, подходящий для localStorage, cookie и параметров URL. Наш бесплатный онлайн текстовый компрессор LZ-String работает целиком в вашем браузере — без загрузки на сервер и установки.
Нет. LZ-String — алгоритм сжатия без потерь: распаковка результата тем же форматом восстановит исходный текст байт в байт без потерь. Сжатие влияет только на закодированное представление, но не на само содержимое.
Безусловно. Наш текстовый компрессор LZ-String обрабатывает всё локально в браузере на чистом JavaScript. Ваш текст никогда не загружается на сервер, не хранится удалённо и не покидает устройство.
Да — 100 % бесплатно, навсегда. Без регистрации, аккаунта, платных тарифов, ограничений использования и рекламы. Сжимайте и распаковывайте текст онлайн сколько угодно раз.
Для localStorage используйте формат UTF-16. JavaScript хранит строки внутри как UTF-16, поэтому формат UTF-16 кодирует 15 бит на символ — значительно компактнее Base64 (6 бит на символ). Вывод UTF-16 обычно на 40 % меньше Base64 при том же вводе.
Для параметров запроса и фрагментов URL используйте формат URI Component. Он использует безопасный для URL алфавит без символов дополнения, поэтому результат можно применять в URL напрямую без дополнительного кодирования.
Установите npm-пакет lz-string (`npm install lz-string`) и используйте соответствующую функцию распаковки: `LZString.decompressFromBase64()`, `LZString.decompressFromUTF16()` или `LZString.decompressFromEncodedURIComponent()`. Формат должен совпадать с использованным при сжатии.
Сжатие LZ-String работает, находя повторяющиеся шаблоны в тексте. У очень коротких строк (менее ~50 символов), случайных данных или уже сжатого содержимого повторов мало, поэтому накладные расходы LZ-String делают результат больше. Это ожидаемо: lz-string наиболее эффективен для структурированного повторяющегося текста, например JSON-объектов.
Нет. LZ-String использует алгоритм LZ77 без кодирования Хаффмана, что делает его быстрее и проще GZIP. GZIP обычно даёт лучшую степень сжатия для больших файлов, но LZ-String специально создан для среды строк JavaScript: его вывод можно хранить прямо в localStorage, cookie и URL.