Class RarArchiveEntry

Class RarArchiveEntry

이름 공간 : Aspose.Zip.Rar 모임: Aspose.Zip.dll (25.5.0)

아카이브 내에서 단일 파일을 나타냅니다.

public abstract class RarArchiveEntry : IArchiveFileEntry

Inheritance

object RarArchiveEntry

Derived

RarArchiveEntryEncrypted , RarArchiveEntryPlain

Implements

IArchiveFileEntry

상속 회원들

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

Remarks

Aspose.Zip.Rar.RarArchiveEntry를 Aspose.Zip.Rar.RarArchiveEntry로 암호화하여 입력이 암호화되었는지 여부를 결정합니다.

Properties

CompressedSize

그것은 압축 된 파일의 크기를 얻습니다.

public ulong CompressedSize { get; }

부동산 가치

ulong

CreationTime

창조의 날짜와 시간을 얻습니다.

public DateTime CreationTime { get; }

부동산 가치

DateTime

IsDirectory

입력이 디렉토리를 나타내는지 여부를 나타내는 값을 얻습니다.

public bool IsDirectory { get; }

부동산 가치

bool

LastAccessTime

마지막 접근 날짜와 시간을 얻습니다.

public DateTime LastAccessTime { get; }

부동산 가치

DateTime

ModificationTime

마지막으로 변경된 날짜와 시간을 제공합니다.

public DateTime ModificationTime { get; }

부동산 가치

DateTime

Name

아카이브 내에서 입력의 이름을 얻습니다.

public string Name { get; }

부동산 가치

string

Source

입력에 대한 데이터 출처 스트림을 얻습니다.

protected Stream Source { get; set; }

부동산 가치

Stream

UncompressedSize

원본 파일의 크기를 얻습니다.

public ulong UncompressedSize { get; }

부동산 가치

ulong

Methods

Extract(스트링, 스트링)

제공된 경로를 통해 파일 시스템에 입력을 추출합니다.

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

Parameters

path string

목적지 파일의 경로.이 파일이 이미 존재한다면, 그것은 과장됩니다.

password string

암호 해독을 위한 선택적 암호.

Returns

FileInfo

구성된 파일의 파일 정보.

Examples

RAR 아카이브에서 두 개의 입력을 추출합니다.

using (FileStream rarFile = File.Open("archive.rar", FileMode.Open))
{
    using (RarArchive archive = new RarArchive(rarFile))
    {
        archive.Entries[0].Extract("first.bin", "pass");
        archive.Entries[1].Extract("second.bin", "pass");
    }
}

Exceptions

ArgumentNullException

path’ is null.

SecurityException

호출자는 필요한 액세스 허가를 가지고 있지 않습니다.

ArgumentException

path’는 텅 비어 있고, 흰색 공간만 포함하거나, 불가능한 문자를 포함합니다.

UnauthorizedAccessException

path" 파일에 대한 액세스는 거부됩니다.

PathTooLongException

지정된 path’, 파일 이름, 또는 둘 다 시스템에 의해 정의 된 최대 길이를 초과합니다.예를 들어, Windows 기반 플랫폼에서 경로는 248 문자 미만이어야하며 파일 이름은 260 문자 미만이어야합니다.

NotSupportedException

path’에 있는 파일에는 링의 중간에 있는 열(:)이 포함되어 있습니다.

FileNotFoundException

파일은 찾을 수 없습니다.

DirectoryNotFoundException

지정된 경로는 불가능하며, 예를 들어 지정되지 않은 드라이브에 있습니다.

IOException

파일은 이미 열려 있습니다.

InvalidDataException

데이터가 부패합니다. -or- CRC 또는 MAC 검증이 입력에 실패했습니다.

Extract(스트리밍, 스트리밍)

제공되는 흐름에 입구를 추출합니다.

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

Parameters

destination Stream

목적지 흐름.그것은 쓸 수 있어야합니다.

password string

암호 해독을 위한 선택적 암호.

Examples

암호를 사용하여 RAR 아카이브의 입력을 추출합니다.

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

Exceptions

InvalidDataException

CRC 또는 MAC 검증이 입력에 실패했습니다.

ArgumentException

destination’ does not support writing.

InvalidDataException

데이터가 부패합니다. -or- CRC 또는 MAC 검증이 입력에 실패했습니다.

Open(스트리트)

추출을위한 입력을 열고 압축 된 입력 콘텐츠로 흐름을 제공합니다.

public Stream Open(string password = null)

Parameters

password string

또한 Aspose.Zip.Rar.RarArchiveLoadOptions.DecryptionPassword 내에 설정할 수 있습니다.

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 < (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>

### <a id="Aspose_Zip_Rar_RarArchiveEntry_ExtractionProgressed"></a> ExtractionProgressed

Raises when a portion of raw stream extracted.

```csharp
public event EventHandler<progresseventargs> ExtractionProgressed

이벤트 유형

EventHandler &lt에 대한 정보 ProgressEventArgs >

Examples

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

Remarks

이벤트 송신자는 Aspose.Zip.Rar.RarArchiveEntry 예제입니다.

 한국어