Class XarArchive
Namespace: Aspose.Zip.Xar
Assembly: Aspose.Zip.dll (25.1.0)
이 클래스는 xar 아카이브 파일을 나타냅니다.
public class XarArchive : IArchive, IDisposable
상속
구현
상속된 멤버
object.GetType(), object.MemberwiseClone(), object.ToString(), object.Equals(object?), object.Equals(object?, object?), object.ReferenceEquals(object?, object?), object.GetHashCode()
생성자
XarArchive(XarCompressionSettings)
Aspose.Zip.Xar.XarArchive 클래스의 새 인스턴스를 초기화합니다.
public XarArchive(XarCompressionSettings defaultCompressionSettings = null)
매개변수
defaultCompressionSettings
XarCompressionSettings
아카이브의 모든 항목에 적용되는 기본 압축 설정입니다.
예제
다음 예제는 파일을 압축하는 방법을 보여줍니다.
using (var archive = new XarArchive())
{
archive.CreateEntry("first.bin", "data.bin");
archive.Save("archive.xar");
}
XarArchive(Stream, XarLoadOptions)
Aspose.Zip.Xar.XarArchive 클래스의 새 인스턴스를 초기화하고 아카이브에서 추출할 수 있는 항목 목록을 구성합니다.
public XarArchive(Stream sourceStream, XarLoadOptions loadOptions = null)
매개변수
sourceStream
Stream
아카이브의 소스입니다. 탐색 가능해야 합니다.
loadOptions
XarLoadOptions
아카이브를 로드하는 옵션입니다.
예제
다음 예제는 모든 항목을 디렉토리에 추출하는 방법을 보여줍니다.
using (var archive = new XarArchive(File.OpenRead("archive.xar")))
{
archive.ExtractToDirectory("C:\\extracted");
}
비고
이 생성자는 어떤 항목도 언팩하지 않습니다. 언팩을 위한 Aspose.Zip.Xar.XarFileEntry.Open 메서드를 참조하십시오.
예외
sourceStream
이 null입니다.
sourceStream
이 탐색 가능하지 않습니다.
sourceStream
이 유효한 xar 아카이브가 아닙니다.
XarArchive(string, XarLoadOptions)
Aspose.Zip.Xar.XarArchive 클래스의 새 인스턴스를 초기화하고 아카이브에서 추출할 수 있는 항목 목록을 구성합니다.
public XarArchive(string path, XarLoadOptions loadOptions = null)
매개변수
path
string
아카이브 파일의 경로입니다.
loadOptions
XarLoadOptions
아카이브를 로드하는 옵션입니다.
예제
다음 예제는 모든 항목을 디렉토리에 추출하는 방법을 보여줍니다.
using (var archive = new XarArchive("archive.xar"))
{
archive.ExtractToDirectory("C:\\extracted");
}
비고
이 생성자는 어떤 항목도 언팩하지 않습니다. 언팩을 위한 Aspose.Zip.Xar.XarFileEntry.Open 메서드를 참조하십시오.
예외
path
이 null입니다.
호출자가 액세스할 수 있는 권한이 없습니다.
path
이 비어 있거나, 공백만 포함하거나, 유효하지 않은 문자를 포함합니다.
path
파일에 대한 액세스가 거부되었습니다.
지정된 path
, 파일 이름 또는 둘 다 시스템 정의 최대 길이를 초과합니다. 예를 들어, Windows 기반 플랫폼에서는 경로가 248자 미만이어야 하며, 파일 이름은 260자 미만이어야 합니다.
path
에 문자열 중간에 콜론(:)이 포함되어 있습니다.
파일을 찾을 수 없습니다.
지정된 경로가 유효하지 않습니다. 예를 들어 매핑되지 않은 드라이브에 있을 수 있습니다.
파일이 이미 열려 있습니다.
path
의 파일이 유효한 xar 아카이브가 아닙니다.
속성
Entries
아카이브를 구성하는 Aspose.Zip.Xar.XarEntry 유형의 항목을 가져옵니다.
public IEnumerable<xarentry> Entries { get; }
속성 값
IEnumerable<XarEntry>
메서드
CreateEntries(string, bool, XarCompressionSettings)
지정된 디렉토리에서 모든 파일과 디렉토리를 재귀적으로 아카이브에 추가합니다.
public XarArchive CreateEntries(string sourceDirectory, bool includeRootDirectory = true, XarCompressionSettings compressionSettings = null)
매개변수
sourceDirectory
string
압축할 디렉토리입니다.
includeRootDirectory
bool
루트 디렉토리를 포함할지 여부를 나타냅니다.
compressionSettings
XarCompressionSettings
추가된 Aspose.Zip.Xar.XarEntry 항목에 사용되는 압축 설정입니다.
반환
Xar 항목 인스턴스입니다.
예제
using (FileStream xarFile = File.Open("archive.xar", FileMode.Create))
{
using (var archive = new XarArchive())
{
archive.CreateEntries(@"C:\folder", false);
archive.Save(xarFile);
}
}
예외
sourceDirectory
이 null입니다.
호출자가 sourceDirectory
에 액세스할 수 있는 권한이 없습니다.
sourceDirectory
에 유효하지 않은 문자가 포함되어 있습니다. 예: “, <, >, 또는 |.
지정된 경로, 파일 이름 또는 둘 다 시스템 정의 최대 길이를 초과합니다. 예를 들어, Windows 기반 플랫폼에서는 경로가 248자 미만이어야 하며, 파일 이름은 260자 미만이어야 합니다. 지정된 경로, 파일 이름 또는 둘 다 너무 깁니다.
sourceDirectory
가 파일을 나타내며 디렉토리가 아닙니다.
CreateEntries(DirectoryInfo, bool, XarCompressionSettings)
지정된 디렉토리에서 모든 파일과 디렉토리를 재귀적으로 아카이브에 추가합니다.
public XarArchive CreateEntries(DirectoryInfo directory, bool includeRootDirectory = true, XarCompressionSettings compressionSettings = null)
매개변수
directory
DirectoryInfo
압축할 디렉토리입니다.
includeRootDirectory
bool
루트 디렉토리를 포함할지 여부를 나타냅니다.
compressionSettings
XarCompressionSettings
추가된 Aspose.Zip.Xar.XarEntry 항목에 사용되는 압축 설정입니다.
반환
Xar 항목 인스턴스입니다.
예제
using (FileStream xarFile = File.Open("archive.xar", FileMode.Create))
{
using (var archive = new XarArchive())
{
archive.CreateEntries(new DirectoryInfo(@"C:\folder"), false);
archive.Save(xarFile);
}
}
예외
directory
가 null입니다.
호출자가 directory
에 액세스할 수 있는 권한이 없습니다.
directory
가 파일을 나타내며 디렉토리가 아닙니다.
CreateEntry(string, FileInfo, bool, XarCompressionSettings)
아카이브 내에서 단일 항목을 생성합니다.
public XarEntry CreateEntry(string name, FileInfo fileInfo, bool openImmediately = false, XarCompressionSettings compressionSettings = null)
매개변수
name
string
항목의 이름입니다.
fileInfo
FileInfo
압축할 파일 또는 폴더의 메타데이터입니다.
openImmediately
bool
파일을 즉시 열면 true, 그렇지 않으면 아카이브 저장 시 파일을 엽니다.
compressionSettings
XarCompressionSettings
추가된 Aspose.Zip.Xar.XarEntry 항목에 사용되는 압축 설정입니다.
반환
Xar 항목 인스턴스입니다.
예제
FileInfo fileInfo = new FileInfo("data.bin");
using (var archive = new XarArchive())
{
archive.CreateEntry("test.bin", fileInfo);
archive.Save("archive.xar");
}
비고
파일이 openImmediately
매개변수로 즉시 열리면 아카이브가 폐기될 때까지 차단됩니다.
예외
name
이 null입니다.
name
이 비어 있습니다.
fileInfo
가 null입니다.
CreateEntry(string, string, bool, XarCompressionSettings)
아카이브 내에서 단일 항목을 생성합니다.
public XarEntry CreateEntry(string name, string sourcePath, bool openImmediately = false, XarCompressionSettings compressionSettings = null)
매개변수
name
string
항목의 이름입니다.
sourcePath
string
압축할 파일의 경로입니다.
openImmediately
bool
파일을 즉시 열면 true, 그렇지 않으면 아카이브 저장 시 파일을 엽니다.
compressionSettings
XarCompressionSettings
추가된 Aspose.Zip.Xar.XarEntry 항목에 사용되는 압축 설정입니다.
반환
Xar 항목 인스턴스입니다.
예제
using (var archive = new XarArchive())
{
archive.CreateEntry("first.bin", "data.bin");
archive.Save("archive.xar");
}
비고
항목 이름은 name
매개변수 내에서만 설정됩니다. sourcePath
매개변수에 제공된 파일 이름은 항목 이름에 영향을 미치지 않습니다.
파일이 openImmediately
매개변수로 즉시 열리면 아카이브가 폐기될 때까지 차단됩니다.
예외
sourcePath
가 null입니다.
호출자가 액세스할 수 있는 권한이 없습니다.
sourcePath
이 비어 있거나, 공백만 포함하거나, 유효하지 않은 문자를 포함합니다. - 또는 - 파일 이름이 name
의 일부로서 100자를 초과합니다.
sourcePath
파일에 대한 액세스가 거부되었습니다.
지정된 sourcePath
, 파일 이름 또는 둘 다 시스템 정의 최대 길이를 초과합니다. 예를 들어, Windows 기반 플랫폼에서는 경로가 248자 미만이어야 하며, 파일 이름은 260자 미만이어야 합니다. - 또는 - name
이 xar에 대해 너무 깁니다.
sourcePath
의 파일이 문자열 중간에 콜론(:)을 포함하고 있습니다.
xar 아카이브를 수정할 수 없습니다.
CreateEntry(string, Stream, XarCompressionSettings)
아카이브 내에서 단일 항목을 생성합니다.
public XarEntry CreateEntry(string name, Stream source, XarCompressionSettings compressionSettings = null)
매개변수
name
string
항목의 이름입니다.
source
Stream
항목의 입력 스트림입니다.
compressionSettings
XarCompressionSettings
추가된 Aspose.Zip.Xar.XarEntry 항목에 사용되는 압축 설정입니다.
반환
Xar 항목 인스턴스입니다.
예제
using (var archive = new XarArchive())
{
archive.CreateEntry("data.bin", File.OpenRead("data.bin"));
archive.Save("archive.xar");
}
예외
name
이 null입니다.
source
가 null입니다.
name
이 비어 있습니다.
xar 아카이브를 수정할 수 없습니다.
DeleteEntry(XarEntry)
특정 항목의 첫 번째 발생을 항목 목록에서 제거합니다.
public XarArchive DeleteEntry(XarEntry entry)
매개변수
entry
XarEntry
항목 목록에서 제거할 항목입니다.
반환
Xar 항목 인스턴스입니다.
예제
다음은 마지막 항목을 제외한 모든 항목을 제거하는 방법입니다:
using (var archive = new XarArchive("archive.xar"))
{
while (archive.Entries.Count > 1)
archive.DeleteEntry(archive.Entries.FirstOrDefault());
archive.Save(outputXarFile);
}
예외
entry
가 null입니다.
Dispose()
비관리 리소스를 해제, 해방 또는 재설정하는 응용 프로그램 정의 작업을 수행합니다.
public void Dispose()
Dispose(bool)
비관리 리소스를 해제, 해방 또는 재설정하는 응용 프로그램 정의 작업을 수행합니다.
protected virtual void Dispose(bool disposing)
매개변수
disposing
bool
관리 리소스를 해제해야 하는지 여부입니다.
ExtractToDirectory(string)
아카이브의 모든 파일을 제공된 디렉토리에 추출합니다.
public void ExtractToDirectory(string destinationDirectory)
매개변수
destinationDirectory
string
추출된 파일을 배치할 디렉토리의 경로입니다.
예제
using (var archive = new XarArchive("archive.xar"))
{
archive.ExtractToDirectory("C:\\extracted");
}
비고
디렉토리가 존재하지 않으면 생성됩니다.
예외
path가 null입니다.
지정된 경로, 파일 이름 또는 둘 다 시스템 정의 최대 길이를 초과합니다. 예를 들어, Windows 기반 플랫폼에서는 경로가 248자 미만이어야 하며, 파일 이름은 260자 미만이어야 합니다.
호출자가 기존 디렉토리에 액세스할 수 있는 권한이 없습니다.
디렉토리가 존재하지 않으면 경로에 드라이브 레이블(“C:")의 일부가 아닌 콜론(:) 문자가 포함되어 있습니다.
path가 길이가 0인 문자열이거나, 공백만 포함하거나, 하나 이상의 유효하지 않은 문자를 포함합니다. 유효하지 않은 문자는 System.IO.Path.GetInvalidPathChars 메서드를 사용하여 쿼리할 수 있습니다. - 또는 - path가 접두사가 붙거나 콜론 문자(:)만 포함합니다.
지정된 path가 파일입니다. - 또는 - 네트워크 이름을 알 수 없습니다.
아카이브가 손상되었습니다.
Save(string, XarSaveOptions)
제공된 대상 파일에 아카이브를 저장합니다.
public void Save(string destinationFileName, XarSaveOptions saveOptions = null)
매개변수
destinationFileName
string
생성할 아카이브의 경로입니다. 지정된 파일 이름이 기존 파일을 가리키면 덮어씁니다.
saveOptions
XarSaveOptions
xar 아카이브를 저장하는 옵션입니다.
예외
destinationFileName
이 null입니다.
xar 아카이브를 수정할 수 없습니다.
Save(Stream, XarSaveOptions)
제공된 스트림에 아카이브를 저장합니다.
public void Save(Stream output, XarSaveOptions saveOptions = null)
매개변수
output
Stream
대상 스트림입니다.
saveOptions
XarSaveOptions
xar 아카이브를 저장하는 옵션입니다.
예외
output
이 null입니다.
output
이 쓰기/읽기가 불가능하거나 탐색 가능하지 않습니다.
xar 아카이브를 수정할 수 없습니다.