Class Bzip2Archive
Namespace: Aspose.Zip.Bzip2
Assembly: Aspose.Zip.dll (25.1.0)
このクラスはbzip2アーカイブファイルを表します。bzip2アーカイブを作成または抽出するために使用します。
public class Bzip2Archive : IArchive, IDisposable, IArchiveFileEntry
継承
実装
IArchive, IDisposable, IArchiveFileEntry
継承メンバー
object.GetType(), object.MemberwiseClone(), object.ToString(), object.Equals(object?), object.Equals(object?, object?), object.ReferenceEquals(object?, object?), object.GetHashCode()
注意事項
bzip2は、Burrows-Wheelerブロックソートテキスト圧縮アルゴリズムとハフマン符号化を使用してファイルを圧縮します。詳細については、https://en.wikipedia.org/wiki/Bzip2を参照してください。
コンストラクター
Bzip2Archive()
圧縮のために準備されたAspose.Zip.Bzip2.Bzip2Archiveクラスの新しいインスタンスを初期化します。
public Bzip2Archive()
例
次の例は、ファイルを圧縮する方法を示しています。
using (Bzip2Archive archive = new Bzip2Archive())
{
archive.SetSource("data.bin");
archive.Save("archive.bz2");
}
Bzip2Archive(Stream, Bzip2LoadOptions)
解凍のために準備されたAspose.Zip.Bzip2.Bzip2Archiveクラスの新しいインスタンスを初期化します。
public Bzip2Archive(Stream sourceStream, Bzip2LoadOptions loadOptions = null)
パラメーター
sourceStream
Stream
アーカイブのソース。
loadOptions
Bzip2LoadOptions
アーカイブを読み込むためのオプション。
例
ストリームからアーカイブを開き、MemoryStream
に抽出します。
var ms = new MemoryStream();
using (Bzip2Archive archive = new Bzip2Archive(File.OpenRead("archive.bz2")))
archive.Open().CopyTo(ms);
注意事項
このコンストラクターは解凍を行いません。解凍のためにはAspose.Zip.Bzip2.Bzip2Archive.Openメソッドを参照してください。
Bzip2Archive(string, Bzip2LoadOptions)
解凍のために準備されたAspose.Zip.Bzip2.Bzip2Archiveクラスの新しいインスタンスを初期化します。
public Bzip2Archive(string path, Bzip2LoadOptions loadOptions = null)
パラメーター
path
string
アーカイブファイルへのパス。
loadOptions
Bzip2LoadOptions
アーカイブを読み込むためのオプション。
例
パスからファイルのアーカイブを開き、MemoryStream
に抽出します。
var ms = new MemoryStream();
using (Bzip2Archive archive = new Bzip2Archive("archive.bz2"))
archive.Open().CopyTo(ms);
注意事項
このコンストラクターは解凍を行いません。解凍のためにはAspose.Zip.Bzip2.Bzip2Archive.Openメソッドを参照してください。
例外
path
がnullです。
呼び出し元は必要なアクセス許可を持っていません。
path
が空、空白のみ、または無効な文字を含んでいます。
path
へのファイルアクセスが拒否されました。
指定されたpath
、ファイル名、またはその両方がシステム定義の最大長を超えています。たとえば、Windowsベースのプラットフォームでは、パスは248文字未満、ファイル名は260文字未満でなければなりません。
path
の中にコロン(:)が含まれています。
ファイルが見つかりません。
指定されたパスが無効です(例えば、マッピングされていないドライブ上にあるなど)。
ファイルはすでに開いています。
メソッド
Dispose()
管理されていないリソースの解放、リリース、またはリセットに関連するアプリケーション定義のタスクを実行します。
public void Dispose()
Dispose(bool)
管理されていないリソースの解放、リリース、またはリセットに関連するアプリケーション定義のタスクを実行します。
protected virtual void Dispose(bool disposing)
パラメーター
disposing
bool
管理されたリソースを解放すべきかどうか。
Extract(Stream)
指定されたストリームにアーカイブを抽出します。
public void Extract(Stream destination)
パラメーター
destination
Stream
宛先ストリーム。書き込み可能でなければなりません。
例
using (Bzip2Archive archive = new Bzip2Archive("archive.bz2"))
{
archive.Extract(httpResponseStream);
}
例外
destination
は書き込みをサポートしていません。
Extract(string)
指定されたパスのファイルにアーカイブを抽出します。
public FileInfo Extract(string path)
パラメーター
path
string
宛先ファイルへのパス。ファイルがすでに存在する場合は上書きされます。
戻り値
抽出されたファイルの情報。
例外
path
がnullです。
呼び出し元は必要なアクセス許可を持っていません。
path
が空、空白のみ、または無効な文字を含んでいます。
path
へのファイルアクセスが拒否されました。
指定されたpath
、ファイル名、またはその両方がシステム定義の最大長を超えています。たとえば、Windowsベースのプラットフォームでは、パスは248文字未満、ファイル名は260文字未満でなければなりません。
path
の中にコロン(:)が含まれています。
ファイルが見つかりません。
指定されたパスが無効です(例えば、マッピングされていないドライブ上にあるなど)。
ファイルはすでに開いています。
ExtractToDirectory(string)
アーカイブの内容を指定されたディレクトリに抽出します。
public void ExtractToDirectory(string destinationDirectory)
パラメーター
destinationDirectory
string
抽出されたファイルを配置するディレクトリへのパス。
注意事項
ディレクトリが存在しない場合は作成されます。
例外
destinationDirectory
がnullです。
指定されたパス、ファイル名、またはその両方がシステム定義の最大長を超えています。たとえば、Windowsベースのプラットフォームでは、パスは248文字未満、ファイル名は260文字未満でなければなりません。
呼び出し元は既存のディレクトリにアクセスするための必要な権限を持っていません。
ディレクトリが存在しない場合、パスにドライブラベルの一部でないコロン文字(:)が含まれています。
destinationDirectory
がゼロ長の文字列、空白のみ、または無効な文字の1つ以上を含んでいます。無効な文字を調べるには、System.IO.Path.GetInvalidPathCharsメソッドを使用できます。
-または- パスがコロン文字(:)のみで構成されています。
指定されたパスがファイルです。 -または- ネットワーク名が不明です。
Open()
アーカイブを抽出のために開き、アーカイブコンテンツを持つストリームを提供します。
public Stream Open()
戻り値
アーカイブの内容を表すストリーム。
例
使用法:
Stream decompressed = archive.Open();
.NET 4.0以降 - Stream.CopyToメソッドを使用:
decompressed.CopyTo(httpResponse.OutputStream)
.NET 3.5以前 - バイトを手動でコピー:
byte[] buffer = new byte[8192];
int bytesRead;
while (0 < (bytesRead = decompressed.Read(buffer, 0, buffer.Length)))
fileStream.Write(buffer, 0, bytesRead);
```</p>
#### 注意事項
ストリームから読み取って、ファイルの元の内容を取得します。例のセクションを参照してください。
### <a id="Aspose_Zip_Bzip2_Bzip2Archive_Save_System_IO_Stream_Aspose_Zip_Bzip2_Bzip2SaveOptions_"></a> Save\(Stream, Bzip2SaveOptions\)
指定されたストリームにアーカイブを保存します。
```csharp
public void Save(Stream outputStream, Bzip2SaveOptions saveOptions = null)
パラメーター
outputStream
Stream
宛先ストリーム。
saveOptions
Bzip2SaveOptions
bzip2アーカイブを保存するためのオプション。指定しない場合は、900 Kbのブロックサイズが使用されます。
例
圧縮データをhttp応答ストリームに書き込みます。
using (var archive = new Bzip2Archive())
{
archive.SetSource(new FileInfo("data.bin"));
archive.Save(httpResponse.OutputStream);
}
注意事項
outputStream
は書き込み可能でなければなりません。
例外
アーカイブするデータのソースが提供されていません。
outputStream
は書き込み可能ではありません。
ファイルソースが読み取り専用であるか、ディレクトリです。
指定されたファイルソースパスが無効です(例えば、マッピングされていないドライブ上にあるなど)。
ファイルソースはすでに開いています。
Save(string, Bzip2SaveOptions)
指定された宛先ファイルにアーカイブを保存します。
public void Save(string destinationFileName, Bzip2SaveOptions saveOptions = null)
パラメーター
destinationFileName
string
作成するアーカイブのパス。指定されたファイル名が既存のファイルを指す場合は、上書きされます。
saveOptions
Bzip2SaveOptions
bzip2アーカイブを保存するためのオプション。指定しない場合は、900 Kbのブロックサイズが使用されます。
例
圧縮データをファイルに書き込みます。
using (var archive = new Bzip2Archive())
{
archive.SetSource(new FileInfo("data.bin"));
archive.Save("data.bz2");
}
例外
destinationFileName
がnullです。
呼び出し元は必要なアクセス許可を持っていません。
destinationFileName
が空、空白のみ、または無効な文字を含んでいます。
destinationFileName
へのファイルアクセスが拒否されました。
指定されたdestinationFileName
、ファイル名、またはその両方がシステム定義の最大長を超えています。たとえば、Windowsベースのプラットフォームでは、パスは248文字未満、ファイル名は260文字未満でなければなりません。
destinationFileName
の中にコロン(:)が含まれています。
SetSource(Stream)
アーカイブ内で圧縮されるコンテンツを設定します。
public void SetSource(Stream source)
パラメーター
source
Stream
アーカイブの入力ストリーム。
例
using (Bzip2Archive archive = new Bzip2Archive())
{
archive.SetSource(new MemoryStream(new byte[] { 0x00,0xFF }));
archive.Save("archive.bz2");
}
SetSource(FileInfo)
アーカイブ内で圧縮されるコンテンツを設定します。
public void SetSource(FileInfo fileInfo)
パラメーター
fileInfo
FileInfo
圧縮されるファイルへの参照。
例
using (Bzip2Archive archive = new Bzip2Archive())
{
archive.SetSource(new FileInfo("data.bin"));
archive.Save("archive.bz2");
}
SetSource(string)
アーカイブ内で圧縮されるコンテンツを設定します。
public void SetSource(string path)
パラメーター
path
string
圧縮されるファイルへのパス。
例
using (Bzip2Archive archive = new Bzip2Archive())
{
archive.SetSource("data.bin");
archive.Save("archive.bz2");
}
例外
path
がnullです。
呼び出し元は必要なアクセス許可を持っていません。
path
が空、空白のみ、または無効な文字を含んでいます。
path
へのファイルアクセスが拒否されました。
指定されたpath
、ファイル名、またはその両方がシステム定義の最大長を超えています。たとえば、Windowsベースのプラットフォームでは、パスは248文字未満、ファイル名は260文字未満でなければなりません。
path
の中にコロン(:)が含まれています。
SetSource(TarArchive, TarFormat)
アーカイブ内で圧縮されるコンテンツを設定します。
public void SetSource(TarArchive tarArchive, TarFormat format = TarFormat.UsTar)
パラメーター
tarArchive
TarArchive
圧縮されるtarアーカイブ。
format
TarFormat
tarヘッダー形式を定義します。
例
using (var tarArchive = new TarArchive())
{
tarArchive.CreateEntry("first.bin", "data1.bin");
tarArchive.CreateEntry("second.bin", "data2.bin");
using (var bzippedArchive = new Bzip2Archive())
{
bzippedArchive.SetSource(tarArchive);
bzippedArchive.Save("archive.tar.bz2");
}
}
注意事項
このメソッドを使用して、結合tar.bz2アーカイブを作成します。
SetSource(CpioArchive, CpioFormat)
アーカイブ内で圧縮されるコンテンツを設定します。
public void SetSource(CpioArchive cpioArchive, CpioFormat format = CpioFormat.OldAscii)
パラメーター
cpioArchive
CpioArchive
圧縮されるCpioアーカイブ。
format
CpioFormat
cpioヘッダー形式を定義します。
例
using (var cpioArchive = new CpioArchive())
{
cpioArchive.CreateEntry("first.bin", "data1.bin");
cpioArchive.CreateEntry("second.bin", "data2.bin");
using (var bzippedArchive = new Bzip2Archive())
{
bzippedArchive.SetSource(cpioArchive);
bzippedArchive.Save("archive.cpio.bz2");
}
}
注意事項
このメソッドを使用して、結合cpio.bz2アーカイブを作成します。