Class ArchiveEntry

Class ArchiveEntry

نام ها : Aspose.Zip جمع آوری: Aspose.Zip.dll (25.5.0)

یک فایل در یک آرشیو وجود دارد

public abstract class ArchiveEntry : IArchiveFileEntry

Inheritance

object ArchiveEntry

Derived

ArchiveEntryEncrypted , ArchiveEntryPlain

Implements

IArchiveFileEntry

اعضای ارثی

object.GetType() , object.MemberwiseClone() , object.ToString() , object.Equals(object?) , object.Equals(object?, object?) , object.ReferenceEquals(object?, object?) , object.GetHashCode()

Remarks

یک مثال Aspose.Zip.ArchiveEntry را به Aspose.Zip.ArchiveEntry رمزگذاری کنید تا مشخص شود که آیا ورودی رمزگذاری شده است یا نه.

Constructors

ArchiveEntry(تگ ها، CompressionSettings، Funcوینت)

شروع یک مثال جدید از کلاس Aspose.Zip.ArchiveEntry.

protected ArchiveEntry(string name, CompressionSettings compressionSettings, Func<stream> sourceProvider, uint fileAttributes)

Parameters

name string

نام ورودی

compressionSettings CompressionSettings

تنظیمات برای فشرده سازی یا فشرده سازی

sourceProvider Func &lt؛ Stream >

روش بازگشت جریان با داده های ورودی یا برای فشرده سازی.

fileAttributes uint

ویژگی های سیستم فایل

ArchiveEntry(String، CompressionSettings، جریان، uint، FileSystemInfo)

شروع یک مثال جدید از کلاس Aspose.Zip.ArchiveEntry.

protected ArchiveEntry(string name, CompressionSettings compressionSettings, Stream source, uint fileAttributes, FileSystemInfo fileInfo = null)

Parameters

name string

نام ورودی

compressionSettings CompressionSettings

تنظیمات برای فشرده سازی یا فشرده سازی

source Stream

جریان با داده های ورودی یا برای فشرده سازی و یا برای فشرده سازی.

fileAttributes uint

ویژگی های سیستم فایل

fileInfo FileSystemInfo

فایل یا دایرکتوری اطلاعات ورودی مبتنی بر.

Properties

Comment

ارسال نظر از ورودی در آرشیو

public string Comment { get; protected set; }

ارزش املاک

string

CompressedSize

حجم فایل های فشرده را به دست می آورد.

public ulong CompressedSize { get; }

ارزش املاک

ulong

CompressionSettings

تنظیمات برای فشرده سازی یا فشرده سازی

public CompressionSettings CompressionSettings { get; }

ارزش املاک

CompressionSettings

DataSource

منبع برای ورود اگر ورودی به آرشیو اضافه شده است، استخراج نشده است.

public Stream DataSource { get; }

ارزش املاک

Stream

Remarks

قبل از اعطای، منبع صفر است.این منبع ممکن است در روش “Archive.Save” در برخی موارد اعطا شود.

FileAttributes

ویژگی های فایل را از سیستم میزبان دریافت می کند.

protected FileAttributes FileAttributes { get; }

ارزش املاک

FileAttributes

IsDirectory

یک مقدار دریافت می کند که نشان می دهد آیا ورودی یک دایرکتوری را نشان می دهد.

public bool IsDirectory { get; }

ارزش املاک

bool

ModificationTime

آخرین تاریخ و زمان اصلاح شده را دریافت یا تنظیم کنید.

public DateTime ModificationTime { get; set; }

ارزش املاک

DateTime

Name

نام ورودی را در داخل آرشیو دریافت کنید.

public string Name { get; protected set; }

ارزش املاک

string

UncompressedSize

اندازه فایل اصلی را دریافت کنید.

public ulong UncompressedSize { get; }

ارزش املاک

ulong

Methods

Extract(String، String)

وارد سیستم فایل را از طریق مسیر ارائه شده خارج می کند.

public FileInfo Extract(string path, string password = null)

Parameters

path string

مسیر به مقصد فایل.اگر فایل در حال حاضر وجود دارد، آن را بیش از حد نوشته خواهد شد.

password string

رمز عبور اختیاری برای رمزگذاری

Returns

FileInfo

اطلاعات مربوط به فایل های ترکیب شده

Examples

استخراج دو ورودی از آرشیو zip، هر یک با رمز عبور خود را

using (FileStream zipFile = File.Open("archive.zip", FileMode.Open))
{
    using (Archive archive = new Archive(zipFile))
    {
        archive.Entries[0].Extract("first.bin", "first_pass");
        archive.Entries[1].Extract("second.bin", "second_pass");
    }
}

Exceptions

ArgumentNullException

path’ is null.

SecurityException

متقاضی مجوز لازم برای دسترسی ندارد.

ArgumentException

مسیر path" خالی است، فقط حاوی فضاهای سفید است یا حاوی کاراکترهای نادرست است.

UnauthorizedAccessException

دسترسی به فایل path" رد می شود.

PathTooLongException

برای مثال، در پلتفرم های مبتنی بر ویندوز، مسیرها باید کمتر از 248 کاراکتر باشد و نام فایل ها باید کمتر از 260 کاراکتر باشد.

NotSupportedException

فایل در path" حاوی یک ستون (:) در وسط ردیف است.

FileNotFoundException

این فایل یافت نشد.

DirectoryNotFoundException

مسیر مشخص شده نادرست است، به عنوان مثال در یک درایو بدون نقشه.

IOException

فایل در حال حاضر باز است.

InvalidDataException

اطلاعات خراب شده است. - یا- CRC یا MAC تایید برای ورودی شکست خورده است.

Extract(جریان، string)

ورودی را به جریان ارائه شده استخراج کنید.

public void Extract(Stream destination, string password = null)

Parameters

destination Stream

بایگانی برچسب ها: باید نوشته شود

password string

رمز عبور اختیاری برای رمزگذاری

Examples

یک ورودی از آرشیو ZIP با رمز عبور استخراج کنید.

using (FileStream zipFile = File.Open("archive.zip", FileMode.Open))
{
    using (Archive archive = new Archive(zipFile))
    {
        archive.Entries[0].Extract(httpResponseStream, "p@s$");
    }
}

Exceptions

InvalidDataException

اطلاعات خراب شده است. - یا- CRC یا MAC تایید برای ورودی شکست خورده است.

IOException

منبع خراب شده یا غیر قابل خواندن است.

ArgumentException

destination’ does not support writing.

Open(String)

ورودی را برای استخراج باز می کند و جریان را با محتوای ورودی فشرده فراهم می کند.

public Stream Open(string password = null)

Parameters

password string

رمز عبور اختیاری برای رمزگذاری

Returns

Stream

جریان که محتوای ورودی را نشان می دهد.

Examples

استفاده :Stream decompressed = entry.Open();

.NET 4.0 و بالاتر - از روش Stream.CopyTo استفاده کنید:decompressed.CopyTo(httpResponse.OutputStream)

.NET 3.5 و قبل از آن - بایت ها را به صورت دستی کپی کنید:

byte[] buffer = new byte[8192];
int bytesRead;
while (0 &lt; (bytesRead = decompressed.Read(buffer, 0, buffer.Length)))
 fileStream.Write(buffer, 0, bytesRead);
```</p>

#### Remarks

<p>Read from the stream to get the original content of a file. See examples section.</p>

#### Exceptions

 [InvalidOperationException](https://learn.microsoft.com/dotnet/api/system.invalidoperationexception)

The archive is in an incorrect state.

### <a id="Aspose_Zip_ArchiveEntry_CompressionProgressed"></a> CompressionProgressed

Raises when a portion of raw stream compressed.

```csharp
public event EventHandler<progresseventargs> CompressionProgressed

نوع رویداد

EventHandler &lt؛ ProgressEventArgs >

Examples

archive.Entries[0].CompressionProgressed += (s, e) =&gt; { int percent = (int)((100 * (long)e.ProceededBytes) / entrySourceStream.Length); };

Remarks

فرستنده رویداد یک مثال Aspose.Zip.ArchiveEntry است.

ExtractionProgressed

هنگامی که بخشی از جریان خام استخراج می شود، افزایش می یابد.

public event EventHandler<progresseventargs> ExtractionProgressed

نوع رویداد

EventHandler &lt؛ ProgressEventArgs >

Examples

archive.Entries[0].ExtractionProgressed += (s, e) =&gt; { int percent = (int)((100 * e.ProceededBytes) / ((ArchiveEntry)s).UncompressedSize); };

Remarks

فرستنده رویداد یک مثال Aspose.Zip.ArchiveEntry است.

 فارسی