インタフェースはzipファイルのインタフェースに似ている。
アーカイブ構造の解析と圧縮されていないファイルは、純粋なPythonで処理されます。
解凍は「解凍する」コマンドラインユーティリティを介して行われます。
の特長の:ます。
- はRAR書庫3.xのアーカイブを理解します。
- は、マルチボリュームアーカイブを処理します。
- は保存されたファイル自体を処理します。
- はユニコード名を処理します。
- は、パスワードで保護されたアーカイブを処理します。
- はアーカイブのコメントを処理します。
- は外部のunrarコマンドラインユーティリティを使用しています。
解凍に
のこのリリースで新しいのは何ですか。
- .read()と.readinto()今ルーピングやる読み込み短い上で正常に動作するように読む。パイプから読み込むどこのPython 3.2+のための重要なのはあってもファイルディスクリプタをブロックに短い結果を返すことができます。
- 適切なエラー報告()、.extractall()、.testrar()
- .read()のunrarパイプから:独自のエラーチェックを行い、厥が利用できない場合には、解凍するエラーコードを返すことを好むます。 。
- ).read(文字列の追加を避け、代わりに常にリストを使用+マルチパート読み込みマージする参加します。
- dumprar:ドント再エンコードバイト文字列(Pythonの2.xの)。無効なUnicodeを印刷するとき、これは不必要な失敗を回避します。
.extractの
のバージョン2.4での新機能:
- バグの修正:
- USE_DATETIME:RARから不正な値を生き残るます。
- 壊れたUnicodeのファイル名の扱いにバグします。
- dumprar:Unicodeの文字がパイプとコンソールの両方で動作するようにします。 。
のバージョン2.3での新機能:
- 特徴:
- サポート.seek()メソッド。 (クリスチャン·ラーション)
- サポート.readinto()メソッド。最適化された実装はmemoryviewが利用可能なのPython 2.6+で提供されています。
- サポートファイルのコメントを - 。可能な場合RarInfo.commentが解凍されたデータが含まれています。
- ファイルオブジェクトはio.RawIOBase互換性があります。彼らは、さらにio.BufferedReader`と `` io.TextIOWrapperます。 でラップすることができます
- 今.getinfo()アーカイブエントリを検索するときに代わりに、シーケンシャルスキャンの辞書のルックアップを使用しています。これは多くのエントリを持つアーカイブのprococessingスピードアップします。
- オプションrarfile.UNICODE_COMMENTS両方のアーカイブをデコードし、unicodeに意見を提出する。それはしようとするエンコーディングのリストについては、TRY_ENCODINGSを使用しています。オフの場合、コメントはバイト列として残されている。デフォルト:0
- オプションrarfile.PATH_SEP。デフォルト:R '&#のx5c;'、rarfile.PATH_SEPは= '/' zipファイル互換とされるように設定します。
- オプションrarfile.USE_DATETIME。デフォルト:0、タイムスタンプがタプルです。 。
- オプションrarfile.TRY_ENCODINGSます。
- 並べ替えRarInfoは、より良いショーのzipファイルと互換性のある分野にfielsます。
- 標準regtests確認し、さまざまな機能を動作させるためます。
- 互換性:
- ドロップRarInfo.unicode_filename、平野RarInfo.filenameはすでに2.0以来、Unicodeです。
- .read(-1)EOFまで今読み込む。以前は、空のバッファが返さます。
- 修正:
- メイク暗号化されたヘッダは、Pythonの3.xのバイト()と旧2.xでは「SHA」のモジュールで動作します。
- 単純化subprocess.Popen()の使用状況のunrarを起動するとき。以前は、最適化し、OS / Pythonのバグを回避しようとしたが、これは保守性はありません。
- 使用の一時RARファイルがあまりにもマルチボリュームアーカイブをハックします。
- は常に解凍するに.WAIT()は、ゾンビを避けるためにします。
- BadRarFileにstruct.errorを変換します。
- 一部のFDリークを差し込みます。影響を受ける:Jythonの、PyPyはします。
- 壊れたアーカイブは、より確実に処理されます。
ファイルストリーム上の
ファイルストリーム上の
RarFile.open()によって返された
パス区切りを変更するには、
datetimeオブジェクトにタイムスタンプを変換するために
チューニングしようとしたエンコーディングリストを可能にするために
のバージョン2.2での新機能は次のとおりです。
- 修正:
- リラックスボリューム命名。今、それだけでその数がどうあるべきかどんな期待をせずに、古いものに番号を見つけて、それを増加させることによって、新しいボリューム名を計算します。
- ファイルが間違って処理されていました。修正します。
- のDOSタイムスタンプの秒数は2で乗算する必要があります。
- 正しいEXTTIME解析します。
- 清掃活動:
- 圧縮サイズは、ファイルが複数のボリュームに分割するために、ユーザーが完全な圧縮サイズを見ているように、それらを一緒に合計し、ボリュームごとでます。
- dumprar:未知のビットを表示します。 。
- を使用struct.Struct()します。
- サポート行方不明os.devnull。 (Pythonの2.3)
1のcolumeで圧縮されたデータの4Gと
アンパック形式をキャッシュする
のバージョン2.1のの新機能:
- 特徴:
- .extractための最小限のimplmentation()、.extractall()、.testrar()。彼らは、解凍する呼び出しにシンプルなショートカットです。
- ファイル名が期待されているRarInfoオブジェクトを受け入れます。
- の.tgzでdumprar.pyを含めます。これは、RARの構造と試験モジュールを視覚化するために使用することができます。
- 暗号化されたファイルのヘッダーをサポートします。
- 修正:
- ENDARC過ぎて読んではいけない、そこに非RARデータがある可能性があります。
- RAR 2.xの:それはENDARCを書き込みませんが、私たちのボリューム·コードは、それを期待した。これを修正します。
- RAR 2.xの:200以上の古いスタイルのボリュームをサポートします。 。
- 清掃活動:
- の読み込みコメント時にのみ要求されます。
- 内部設定変数のクリーンアップ。彼らは今、最終的な名前を持っている必要があります。
- .open():。zipファイルに合わせてモード= Rの引数を追加します。
- ドクとコメントのクリーンアップ、重複を最小限ます。
- 今.open、圧縮と非圧縮ファイル、両方に共通のラッパー()もCRC検査を行いません。
のバージョン2.0のの新機能:
- 特徴:
- Python 3のサポート。それでも2.xので動作します。
- は、延長時間フィールドを解析します。 (.mtime、.ctime、.atime)
- .open()メソッド。これは、メモリに収まらない大規模なエントリを処理することが可能にします。
- は、パスワードで保護されたアーカイブをサポートします。
- はアーカイブのコメントをサポートしています。
- 清掃活動:
- .crcとは、再び符号なしです
<李は>のunrarを起動するサブプロセスモジュールを使用します。
<李>は.filenameは今.unicode_filename廃止されて、常にUnicode文字列でます。
のpython3のCRC32()は符号なしであるようにます。
コメントが見つかりません