ホームページ > 記事 > ウェブフロントエンド > LZ C React Native バインディングによる非常に高速な圧縮アルゴリズム
私は最近、JSI と C に足を突っ込んでおり、その結果、react-native-lz4 という小さなパッケージを構築することになりました。これは、C で書かれた LZ4 アルゴリズムを使用した React Native での高速ファイル圧縮のためのライブラリです。
エラー処理と API の拡張をまだ改良中のため、まだ実験段階ですが、すでに使用できます (注意してください!)
パッケージ: https://github.com/mateoguzmana/react-native-lz4
LZ4 について詳しくは、Web サイト https://lz4.org/
このパッケージは古いアーキテクチャと新しいアーキテクチャの両方をサポートしており、現在、あらゆる種類のファイルを圧縮および解凍するための 2 つの主要な関数を公開しています。
基本的な例:
import { compressFile, decompressFile } from 'react-native-lz4'; function onProgress(processedSize: number, totalSize: number) { // e.g. { processedSize: 50, totalSize: 100, progress: '50%' } console.log({ processedSize, totalSize, progress: `${Math.round((processedSize / totalSize) * 100)}%`, }); } const compressionResult = await compressFile( 'path/to/file', 'path/to/output', onProgress ); const decompressionResult = await decompressFile( 'path/to/file', 'path/to/output', onProgress ); console.log(compressionResult); // { success: true, message: 'File compressed successfully', originalSize: 100, finalSize: 50 } console.log(decompressionResult); // { success: true, message: 'File decompressed successfully', originalSize: 50, finalSize: 100 }
以上がLZ C React Native バインディングによる非常に高速な圧縮アルゴリズムの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。