SevenZipArchive.CreateEntry

CreateEntry(string, FileInfo, bool, SevenZipEntrySettings)

إنشاء إدخال واحد داخل الأرشيف.

public SevenZipArchiveEntry CreateEntry(string name, FileInfo fileInfo, 
    bool openImmediately = false, SevenZipEntrySettings newEntrySettings = null)
معامليكتبوصف
nameStringاسم الإدخال.
fileInfoFileInfoالبيانات الوصفية للملف المراد ضغطه.
openImmediatelyBooleanصحيح إذا فتحت الملف على الفور ، وإلا فافتح الملف عند حفظ الأرشيف.
newEntrySettingsSevenZipEntrySettingsأضيفت إعدادات الضغط والتشفير المستخدمةSevenZipArchiveEntry غرض.

قيمة الإرجاع

سبعة مثيل إدخال 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كلاهماsource وfileInfo لاغية أو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 غرض.

قيمة الإرجاع

مثيل إدخال الرمز البريدي.

أمثلة

قم بتكوين أرشيف 7z بضغط LZMA2 وتشفير جميع الإدخالات.

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صحيح إذا فتحت الملف على الفور ، وإلا فافتح الملف عند حفظ الأرشيف.
newEntrySettingsSevenZipEntrySettingsأضيفت إعدادات الضغط والتشفير المستخدمةSevenZipArchiveEntry غرض.

قيمة الإرجاع

مثيل إدخال الرمز البريدي.

استثناءات

استثناءحالة
ArgumentNullExceptionpath باطل.
SecurityExceptionالمتصل ليس لديه الإذن المطلوب للوصول.
ArgumentExceptionالpath فارغ أو يحتوي على مسافات بيضاء فقط أو يحتوي على أحرف غير صالحة.
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);
    }
}

أنظر أيضا