Class SharArchive
Namespace: Aspose.Zip.Shar
Assembly: Aspose.Zip.dll (25.1.0)
このクラスは shar アーカイブファイルを表します。
public class SharArchive : IDisposable
継承
実装
継承メンバー
object.GetType(), object.MemberwiseClone(), object.ToString(), object.Equals(object?), object.Equals(object?, object?), object.ReferenceEquals(object?, object?), object.GetHashCode()
コンストラクター
SharArchive()
Aspose.Zip.Shar.SharArchive クラスの新しいインスタンスを初期化します。
public SharArchive()
例
以下の例は、ファイルを圧縮する方法を示しています。
using (var archive = new SharArchive())
{
archive.CreateEntry("first.bin", "data.bin");
archive.Save("archive.shar");
}
SharArchive(string)
解凍のために準備された Aspose.Zip.Shar.SharArchive クラスの新しいインスタンスを初期化します。
public SharArchive(string path)
パラメーター
path
string
アーカイブのソースへのパス。
例外
path
が null です。
呼び出し元にはアクセスするための必要な権限がありません。
path
が空、空白のみ、または無効な文字を含んでいます。
ファイル path
へのアクセスが拒否されました。
指定された path
、ファイル名、またはその両方がシステムで定義された最大長を超えています。たとえば、Windows ベースのプラットフォームでは、パスは 248 文字未満、ファイル名は 260 文字未満である必要があります。
path
の文字列の中間にコロン(:)が含まれています。
ファイルが見つかりません。
指定されたパスが無効です(例えば、マッピングされていないドライブ上にあるなど)。
ファイルはすでに開いています。
プロパティ
Entries
アーカイブを構成する Aspose.Zip.Shar.SharEntry 型のエントリを取得します。
public ReadOnlyCollection<sharentry> Entries { get; }
プロパティ値
ReadOnlyCollection<SharEntry>
メソッド
CreateEntries(string, bool)
指定されたディレクトリ内のすべてのファイルとディレクトリを再帰的にアーカイブに追加します。
public SharArchive CreateEntries(string sourceDirectory, bool includeRootDirectory = true)
パラメーター
sourceDirectory
string
圧縮するディレクトリ。
includeRootDirectory
bool
ルートディレクトリ自体を含めるかどうかを示します。
戻り値
Shar エントリインスタンス。
例
using (FileStream sharFile = File.Open("archive.shar", FileMode.Create))
{
using (var archive = new SharArchive())
{
archive.CreateEntries("C:\folder", false);
archive.Save(sharFile);
}
}
例外
sourceDirectory
が null です。
呼び出し元には sourceDirectory
へのアクセスに必要な権限がありません。
sourceDirectory
に無効な文字(", <, >, または |)が含まれています。
指定されたパス、ファイル名、またはその両方がシステムで定義された最大長を超えています。たとえば、Windows ベースのプラットフォームでは、パスは 248 文字未満、ファイル名は 260 文字未満である必要があります。指定されたパス、ファイル名、またはその両方が長すぎます。
sourceDirectory
はファイルを指しており、ディレクトリではありません。
CreateEntries(DirectoryInfo, bool)
指定されたディレクトリ内のすべてのファイルとディレクトリを再帰的にアーカイブに追加します。
public SharArchive CreateEntries(DirectoryInfo directory, bool includeRootDirectory = true)
パラメーター
directory
DirectoryInfo
圧縮するディレクトリ。
includeRootDirectory
bool
ルートディレクトリ自体を含めるかどうかを示します。
戻り値
Shar エントリインスタンス。
例
using (FileStream sharFile = File.Open("archive.shar", FileMode.Create))
{
using (var archive = new SharArchive())
{
archive.CreateEntries(new DirectoryInfo("C:\folder"), false);
archive.Save(sharFile);
}
}
例外
directory
が null です。
呼び出し元には directory
へのアクセスに必要な権限がありません。
directory
はファイルを指しており、ディレクトリではありません。
CreateEntry(string, FileInfo, bool)
アーカイブ内に単一のエントリを作成します。
public SharEntry CreateEntry(string name, FileInfo fileInfo, bool openImmediately = false)
パラメーター
name
string
エントリの名前。
fileInfo
FileInfo
圧縮されるファイルまたはフォルダーのメタデータ。
openImmediately
bool
ファイルを即座に開く場合は true、そうでない場合はアーカイブ保存時にファイルを開きます。
戻り値
Shar エントリインスタンス。
例
FileInfo fileInfo = new FileInfo("data.bin");
using (var archive = new SharArchive())
{
archive.CreateEntry("test.bin", fileInfo);
archive.Save("archive.shar");
}
備考
ファイルが openImmediately
パラメーターで即座に開かれる場合、アーカイブが破棄されるまでブロックされます。
例外
name
が null です。
name
が空です。
fileInfo
が null です。
CreateEntry(string, string, bool)
アーカイブ内に単一のエントリを作成します。
public SharEntry CreateEntry(string name, string sourcePath, bool openImmediately = false)
パラメーター
name
string
エントリの名前。
sourcePath
string
圧縮されるファイルへのパス。
openImmediately
bool
ファイルを即座に開く場合は true、そうでない場合はアーカイブ保存時にファイルを開きます。
戻り値
Shar エントリインスタンス。
例
using (var archive = new SharArchive())
{
archive.CreateEntry("first.bin", "data.bin");
archive.Save("archive.shar");
}
備考
エントリ名は name
パラメーター内でのみ設定されます。sourcePath
パラメーターで提供されたファイル名はエントリ名に影響しません。
ファイルが openImmediately
パラメーターで即座に開かれる場合、アーカイブが破棄されるまでブロックされます。
例外
sourcePath
が null です。
呼び出し元にはアクセスするための必要な権限がありません。
sourcePath
が空、空白のみ、または無効な文字を含んでいます。 - または - ファイル名が name
の一部として 100 文字を超えています。
ファイル sourcePath
へのアクセスが拒否されました。
指定された sourcePath
、ファイル名、またはその両方がシステムで定義された最大長を超えています。 - または - name
が shar に対して長すぎます。
sourcePath
の文字列の中間にコロン(:)が含まれています。
CreateEntry(string, Stream)
アーカイブ内に単一のエントリを作成します。
public SharEntry CreateEntry(string name, Stream source)
パラメーター
name
string
エントリの名前。
source
Stream
エントリの入力ストリーム。
戻り値
Shar エントリインスタンス。
例
using (var archive = new SharArchive())
{
archive.CreateEntry("data.bin", File.OpenRead("data.bin"));
archive.Save("archive.shar");
}
例外
name
が null です。
source
が null です。
name
が空です。
DeleteEntry(SharEntry)
特定のエントリの最初の出現をエントリリストから削除します。
public SharArchive DeleteEntry(SharEntry entry)
パラメーター
entry
SharEntry
エントリリストから削除するエントリ。
戻り値
Shar エントリインスタンス。
例
以下は、最後のエントリを除くすべてのエントリを削除する方法です:
using (var archive = new SharArchive("archive.shar"))
{
while (archive.Entries.Count > 1)
archive.DeleteEntry(archive.Entries[0]);
archive.Save(outputSharFile);
}
例外
entry
が null です。
DeleteEntry(int)
インデックスでエントリをエントリリストから削除します。
public SharArchive DeleteEntry(int entryIndex)
パラメーター
entryIndex
int
削除するエントリのゼロベースのインデックス。
戻り値
エントリが削除されたアーカイブ。
例
using (var archive = new SharArchive("two_files.shar"))
{
archive.DeleteEntry(0);
archive.Save("single_file.shar");
}
例外
entryIndex
が 0 より小さいです。-または- entryIndex
が Entries
のカウント以上です。
Dispose(bool)
アンマネージリソースを解放、リリース、またはリセットするために関連付けられたアプリケーション定義のタスクを実行します。
protected virtual void Dispose(bool disposing)
パラメーター
disposing
bool
マネージリソースを破棄する必要があるかどうか。
Dispose()
アンマネージリソースを解放、リリース、またはリセットするために関連付けられたアプリケーション定義のタスクを実行します。
public void Dispose()
Save(string)
指定された宛先ファイルにアーカイブを保存します。
public void Save(string destinationFileName)
パラメーター
destinationFileName
string
作成されるアーカイブのパス。指定されたファイル名が既存のファイルを指している場合、上書きされます。
例
using (var archive = new SharArchive())
{
archive.CreateEntry("entry1", "data.bin");
archive.Save("archive.shar");
}
備考
アーカイブを読み込んだのと同じパスに保存することが可能です。 しかし、このアプローチは一時ファイルへのコピーを使用するため、推奨されません。
例外
destinationFileName
がゼロ長の文字列、空白のみ、または System.IO.Path.InvalidPathChars で定義される無効な文字を 1 つ以上含んでいます。
destinationFileName
が null です。
指定された destinationFileName
、ファイル名、またはその両方がシステムで定義された最大長を超えています。たとえば、Windows ベースのプラットフォームでは、パスは 248 文字未満、ファイル名は 260 文字未満である必要があります。
指定された destinationFileName
が無効です(例えば、マッピングされていないドライブ上にあるなど)。
ファイルを開く際に I/O エラーが発生しました。
destinationFileName
が読み取り専用のファイルを指定し、アクセスが読み取りではない。-または- 指定されたパスがディレクトリです。-または- 呼び出し元には必要な権限がありません。
destinationFileName
が無効な形式です。
ファイルが見つかりません。
Save(Stream)
指定されたストリームにアーカイブを保存します。
public void Save(Stream output)
パラメーター
output
Stream
宛先ストリーム。
例
using (FileStream sharFile = File.Open("archive.shar", FileMode.Create))
{
using (var archive = new SharArchive())
{
archive.CreateEntry("entry1", "data.bin");
archive.Save(sharFile);
}
}
備考
output
は書き込み可能である必要があります。
例外
output
が null です。
output
が書き込み不可です。 - または - output
が抽出元のストリームと同じです。