Библиотека сжатия данных для OneScript, включающая алгоритмы LZ4, Snappy, Zstd, Brotli, GZip, ZLib и Deflate.
Реализовано с использованием .NET библиотек EasyCompressor и BrotliSharpLib.
opm install compressor
Описание программного интерфейса
#Использовать compressor
// Примеры упаковки данных
Процедура Упаковать()
Компрессор = Новый GZipКомпрессор();
// Новый DeflateКомпрессор();
// Новый BrotliКомпрессор();
// Новый LZ4Компрессор();
// Новый ZLibКомпрессор();
// Новый ZstdКомпрессор();
// Новый SnappyКомпрессор();
// 1. Сжимаем двоичные данные
УпакованныеДанные = Компрессор.Упаковать(ДвоичныеДанные);
// 2. Сжимаем двоичные данные в исходящий поток
Компрессор.Упаковать(ДвоичныеДанные, ИсходящийПоток);
// 3. Читаем входящий поток и сжимаем в исходящий поток
Компрессор.Упаковать(ВходящийПоток, ИсходящийПоток);
// 4. Читаем входящий поток и возвращаем сжатые двоичные данные
УпакованныеДанные = Компрессор.Упаковать(ВходящийПоток);
КонецПроцедуры
// Примеры распаковки данных
Процедура Распаковать()
Компрессор = Новый GZipКомпрессор();
// 1. Распаковываем двоичные данные
РаспакованныеДанные = Компрессор.Распаковать(ДвоичныеДанные);
// 2. Распаковываем двоичные данные в исходящий поток
Компрессор.Распаковать(ДвоичныеДанные, ИсходящийПоток);
// 3. Читаем входящий поток и распаковываем в исходящий поток
Компрессор.Распаковать(ВходящийПоток, ИсходящийПоток);
// 4. Читаем входящий поток и возвращаем распакованные двоичные данные
РаспакованныеДанные = Компрессор.Распаковать(ВходящийПоток);
КонецПроцедуры
Windows | Linux | MacOS | |||
---|---|---|---|---|---|
OneScript 1.9 | OneScript 2.0 | OneScript 1.9 | OneScript 2.0 | OneScript 1.9 | OneScript 2.0 |
✅ | ✅ | ✅ | ✅ | ❓ | ❓ |
Алгоритм | OneScript 1.9 | OneScript 2.0 |
---|---|---|
GZip | System.IO.Compression | |
Deflate | System.IO.Compression | |
Brotli | BrotliSharpLib | System.IO.Compression |
LZ4 | K4os.Compression.LZ4 | |
Zlib | DotNetZip | System.IO.Compression |
Zstd | ZstdSharp | |
Snappy | Snappier |