SevenZipArchive.CreateEntry

CreateEntry(string, FileInfo, bool, SevenZipEntrySettings)

アーカイブ内に単一のエントリを作成します。

public SevenZipArchiveEntry CreateEntry(string name, FileInfo fileInfo, 
    bool openImmediately = false, SevenZipEntrySettings newEntrySettings = null)
パラメータタイプ説明
nameStringエントリの名前。
fileInfoFileInfo圧縮するファイルのメタデータ。
openImmediatelyBooleanファイルをすぐに開く場合は true、それ以外の場合はアーカイブ保存時にファイルを開きます。
newEntrySettingsSevenZipEntrySettings追加に使用される圧縮と暗号化の設定SevenZipArchiveEntryアイテム。

戻り値

7 つの Zip エントリ インスタンス。

例外

例外調子
UnauthorizedAccessExceptionfileInfo読み取り専用またはディレクトリです。
DirectoryNotFoundException指定されたパスは、マップされていないドライブ上にあるなど、無効です。
IOExceptionファイルは既に開いています。

備考

エントリ名は、nameパラメータ。で提供されているファイル名fileInfoパラメータは、エントリ名には影響しません。

ファイルがすぐに開かれた場合openImmediatelyパラメータは、アーカイブが保存されるまでブロックされます。

それぞれ異なるパスワードで暗号化されたエントリでアーカイブを作成します。

using (FileStream sevenZipFile = File.Open("archive.7z", FileMode.Create))
{
    FileInfo fi1 = new FileInfo("data1.bin");
    FileInfo fi2 = new FileInfo("data2.bin");
    FileInfo fi3 = new FileInfo("data3.bin");
    using (var archive = new SevenZipArchive())
    {
        archive.CreateEntry("entry1.bin", fi1, false, new SevenZipEntrySettings(new SevenZipStoreCompressionSettings(), new SevenZipAESEncryptionSettings("test1")));
        archive.CreateEntry("entry2.bin", fi2, false, new SevenZipEntrySettings(new SevenZipStoreCompressionSettings(), new SevenZipAESEncryptionSettings("test2")));
        archive.CreateEntry("entry3.bin", fi3, false, new SevenZipEntrySettings(new SevenZipStoreCompressionSettings(), new SevenZipAESEncryptionSettings("test3")));
        archive.Save(sevenZipFile);
    }
}

関連項目


CreateEntry(string, Stream, SevenZipEntrySettings, FileSystemInfo)

アーカイブ内に単一のエントリを作成します。

public SevenZipArchiveEntry CreateEntry(string name, Stream source, 
    SevenZipEntrySettings newEntrySettings, FileSystemInfo fileInfo)
パラメータタイプ説明
nameStringエントリの名前。
sourceStreamエントリの入力ストリーム。
newEntrySettingsSevenZipEntrySettings追加に使用される圧縮と暗号化の設定SevenZipArchiveEntryアイテム。
fileInfoFileSystemInfo圧縮するファイルまたはフォルダーのメタデータ。

戻り値

SevenZip エントリ インスタンス。

例外

例外調子
InvalidOperationException両方sourcefileInfonull またはsourceはヌルであり、fileInfoディレクトリの略です。

備考

エントリ名は、nameパラメータ。で提供されているファイル名fileInfoパラメータは、エントリ名には影響しません。

fileInfo参照できますDirectoryInfoエントリがディレクトリの場合。

LZMA2 で圧縮された暗号化エントリでアーカイブを作成します。

using (FileStream sevenZipFile = File.Open("archive.7z", FileMode.Create))
{
    using (var archive = new SevenZipArchive())
    {
        archive.CreateEntry("entry1.bin", new MemoryStream(new byte[] {0x00, 0xFF}), new SevenZipEntrySettings(new SevenZipLZMA2CompressionSettings(), new SevenZipAESEncryptionSettings("test1")), new FileInfo("data1.bin")); 
        archive.Save(sevenZipFile);
    }
}

関連項目


CreateEntry(string, Stream, SevenZipEntrySettings)

アーカイブ内に単一のエントリを作成します。

public SevenZipArchiveEntry CreateEntry(string name, Stream source, 
    SevenZipEntrySettings newEntrySettings = null)
パラメータタイプ説明
nameStringエントリの名前。
sourceStreamエントリの入力ストリーム。
newEntrySettingsSevenZipEntrySettings追加に使用される圧縮と暗号化の設定SevenZipArchiveEntryアイテム。

戻り値

zip エントリのインスタンス。

LZMA2 圧縮とすべてのエントリの暗号化を使用して 7z アーカイブを作成します。

using (var archive = new SevenZipArchive(new SevenZipEntrySettings(new SevenZipLZMA2CompressionSettings(), new SevenZipAESEncryptionSettings("p@s$"))))
{
    archive.CreateEntry("data.bin", new MemoryStream(new byte[] {0x00, 0xFF} ));
    archive.Save("archive.7z");
}

関連項目


CreateEntry(string, string, bool, SevenZipEntrySettings)

アーカイブ内に単一のエントリを作成します。

public SevenZipArchiveEntry CreateEntry(string name, string path, bool openImmediately = false, 
    SevenZipEntrySettings newEntrySettings = null)
パラメータタイプ説明
nameStringエントリの名前。
pathString新しいファイルの完全修飾名、または圧縮する相対ファイル名。
openImmediatelyBooleanファイルをすぐに開く場合は true、それ以外の場合はアーカイブ保存時にファイルを開きます。
newEntrySettingsSevenZipEntrySettings追加に使用される圧縮と暗号化の設定SevenZipArchiveEntryアイテム。

戻り値

zip エントリのインスタンス。

例外

例外調子
ArgumentNullExceptionpath無効である。
SecurityException呼び出し元には、アクセスに必要なアクセス許可がありません。
ArgumentExceptionpathが空であるか、空白のみが含まれているか、無効な文字が含まれています。
UnauthorizedAccessExceptionファイルへのアクセスpath否定された。
PathTooLongException指定されたpath、ファイル名、またはその両方がシステム定義の最大長を超えています。たとえば、Windows ベースのプラットフォームでは、パスは 248 文字未満、ファイル名は 260 文字未満である必要があります。
NotSupportedExceptionファイルpath文字列の途中にコロン (:) が含まれています。

備考

エントリ名は、nameパラメータ。で提供されているファイル名pathパラメータは、エントリ名には影響しません。

ファイルがすぐに開かれた場合openImmediatelyパラメータは、アーカイブが保存されるまでブロックされます。

using (FileStream sevenZipFile = File.Open("archive.7z", FileMode.Create))
{
    using (var archive = new SevenZipArchive(new SevenZipEntrySettings(new SevenZipLZMA2CompressionSettings())))
    {
        archive.CreateEntry("data.bin", "file.dat");
        archive.Save(sevenZipFile);
    }
}

関連項目