Class XarArchive
Namespace: Aspose.Zip.Xar
Assembly: Aspose.Zip.dll (25.1.0)
Denna klass representerar xar-arkivfilen.
public class XarArchive : IArchive, IDisposable
Arv
Implementerar
Ärvt Medlemmar
object.GetType(), object.MemberwiseClone(), object.ToString(), object.Equals(object?), object.Equals(object?, object?), object.ReferenceEquals(object?, object?), object.GetHashCode()
Konstruktörer
XarArchive(XarCompressionSettings)
Initierar en ny instans av Aspose.Zip.Xar.XarArchive-klassen.
public XarArchive(XarCompressionSettings defaultCompressionSettings = null)
Parametrar
defaultCompressionSettings
XarCompressionSettings
De standardkomprimeringsinställningar som tillämpas på alla poster i arkivet.
Exempel
Följande exempel visar hur man komprimerar en fil.
using (var archive = new XarArchive())
{
archive.CreateEntry("first.bin", "data.bin");
archive.Save("archive.xar");
}
XarArchive(Stream, XarLoadOptions)
Initierar en ny instans av Aspose.Zip.Xar.XarArchive-klassen och komponerar en lista över poster som kan extraheras från arkivet.
public XarArchive(Stream sourceStream, XarLoadOptions loadOptions = null)
Parametrar
sourceStream
Stream
Källan till arkivet. Den måste vara sökbar.
loadOptions
XarLoadOptions
Alternativen för att ladda arkivet med.
Exempel
Följande exempel visar hur man extraherar alla poster till en katalog.
using (var archive = new XarArchive(File.OpenRead("archive.xar")))
{
archive.ExtractToDirectory("C:\\extracted");
}
Anmärkningar
Denna konstruktor packar inte upp någon post. Se Aspose.Zip.Xar.XarFileEntry.Open-metoden för uppackning.
Undantag
sourceStream
är null.
sourceStream
är inte sökbar.
sourceStream
är inte ett giltigt xar-arkiv.
XarArchive(string, XarLoadOptions)
Initierar en ny instans av Aspose.Zip.Xar.XarArchive-klassen och komponerar en lista över poster som kan extraheras från arkivet.
public XarArchive(string path, XarLoadOptions loadOptions = null)
Parametrar
path
string
Sökvägen till arkivfilen.
loadOptions
XarLoadOptions
Alternativen för att ladda arkivet med.
Exempel
Följande exempel visar hur man extraherar alla poster till en katalog.
using (var archive = new XarArchive("archive.xar"))
{
archive.ExtractToDirectory("C:\\extracted");
}
Anmärkningar
Denna konstruktor packar inte upp någon post. Se Aspose.Zip.Xar.XarFileEntry.Open-metoden för uppackning.
Undantag
path
är null.
Anroparen har inte den nödvändiga behörigheten för att få åtkomst.
path
är tom, innehåller endast vita tecken eller innehåller ogiltiga tecken.
Åtkomst till filen path
är nekad.
Den angivna path
, filnamn eller båda överskrider den systemdefinierade maximala längden. Till exempel, på Windows-baserade plattformar, måste sökvägar vara kortare än 248 tecken, och filnamn måste vara kortare än 260 tecken.
Fil på path
innehåller ett kolon (:) mitt i strängen.
Filens finns inte.
Den angivna sökvägen är ogiltig, som att den ligger på en icke-mappad enhet.
Filens är redan öppen.
Fil på path
är inte ett giltigt xar-arkiv.
Egenskaper
Entries
Får poster av Aspose.Zip.Xar.XarEntry-typ som utgör arkivet.
public IEnumerable<xarentry> Entries { get; }
Egenskapsvärde
IEnumerable<XarEntry>
Metoder
CreateEntries(string, bool, XarCompressionSettings)
Lägger till alla filer och kataloger rekursivt i den angivna katalogen till arkivet.
public XarArchive CreateEntries(string sourceDirectory, bool includeRootDirectory = true, XarCompressionSettings compressionSettings = null)
Parametrar
sourceDirectory
string
Katalog att komprimera.
includeRootDirectory
bool
Anger om roten av katalogen själv ska inkluderas eller inte.
compressionSettings
XarCompressionSettings
De komprimeringsinställningar som används för tillagda Aspose.Zip.Xar.XarEntry-objekt.
Returer
Xar-poster instans.
Exempel
using (FileStream xarFile = File.Open("archive.xar", FileMode.Create))
{
using (var archive = new XarArchive())
{
archive.CreateEntries(@"C:\folder", false);
archive.Save(xarFile);
}
}
Undantag
sourceDirectory
är null.
Anroparen har inte den nödvändiga behörigheten för att få åtkomst till sourceDirectory
.
sourceDirectory
innehåller ogiltiga tecken som “, <, > eller |.
Den angivna sökvägen, filnamnet eller båda överskrider den systemdefinierade maximala längden. Till exempel, på Windows-baserade plattformar, måste sökvägar vara kortare än 248 tecken, och filnamn måste vara kortare än 260 tecken. Den angivna sökvägen, filnamnet eller båda är för långa.
sourceDirectory
står för en fil, inte för en katalog.
CreateEntries(DirectoryInfo, bool, XarCompressionSettings)
Lägger till alla filer och kataloger rekursivt i den angivna katalogen till arkivet.
public XarArchive CreateEntries(DirectoryInfo directory, bool includeRootDirectory = true, XarCompressionSettings compressionSettings = null)
Parametrar
directory
DirectoryInfo
Katalog att komprimera.
includeRootDirectory
bool
Anger om roten av katalogen själv ska inkluderas eller inte.
compressionSettings
XarCompressionSettings
De komprimeringsinställningar som används för tillagda Aspose.Zip.Xar.XarEntry-objekt.
Returer
Xar-poster instans.
Exempel
using (FileStream xarFile = File.Open("archive.xar", FileMode.Create))
{
using (var archive = new XarArchive())
{
archive.CreateEntries(new DirectoryInfo(@"C:\folder"), false);
archive.Save(xarFile);
}
}
Undantag
directory
är null.
Anroparen har inte den nödvändiga behörigheten för att få åtkomst till directory
.
directory
står för en fil, inte för en katalog.
CreateEntry(string, FileInfo, bool, XarCompressionSettings)
Skapa en enskild post inom arkivet.
public XarEntry CreateEntry(string name, FileInfo fileInfo, bool openImmediately = false, XarCompressionSettings compressionSettings = null)
Parametrar
name
string
Namnet på posten.
fileInfo
FileInfo
Metadata för fil eller mapp som ska komprimeras.
openImmediately
bool
Sant om filen ska öppnas omedelbart, annars öppnas filen vid arkivets sparande.
compressionSettings
XarCompressionSettings
De komprimeringsinställningar som används för tillagda Aspose.Zip.Xar.XarEntry-objekt.
Returer
Xar-poster instans.
Exempel
FileInfo fileInfo = new FileInfo("data.bin");
using (var archive = new XarArchive())
{
archive.CreateEntry("test.bin", fileInfo);
archive.Save("archive.xar");
}
Anmärkningar
Om filen öppnas omedelbart med openImmediately
-parametern blir den blockerad tills arkivet avyttras.
Undantag
name
är null.
name
är tom.
fileInfo
är null.
CreateEntry(string, string, bool, XarCompressionSettings)
Skapa en enskild post inom arkivet.
public XarEntry CreateEntry(string name, string sourcePath, bool openImmediately = false, XarCompressionSettings compressionSettings = null)
Parametrar
name
string
Namnet på posten.
sourcePath
string
Sökvägen till filen som ska komprimeras.
openImmediately
bool
Sant om filen ska öppnas omedelbart, annars öppnas filen vid arkivets sparande.
compressionSettings
XarCompressionSettings
De komprimeringsinställningar som används för tillagda Aspose.Zip.Xar.XarEntry-objekt.
Returer
Xar-poster instans.
Exempel
using (var archive = new XarArchive())
{
archive.CreateEntry("first.bin", "data.bin");
archive.Save("archive.xar");
}
Anmärkningar
Postnamnet ställs enbart inom name
-parametern. Filnamnet som anges i sourcePath
-parametern påverkar inte postnamnet.
Om filen öppnas omedelbart med openImmediately
-parametern blir den blockerad tills arkivet avyttras.
Undantag
sourcePath
är null.
Anroparen har inte den nödvändiga behörigheten för att få åtkomst.
sourcePath
är tom, innehåller endast vita tecken eller innehåller ogiltiga tecken. - eller - Filnamnet, som en del av name
, överskrider 100 symboler.
Åtkomst till filen sourcePath
är nekad.
Den angivna sourcePath
, filnamnet eller båda överskrider den systemdefinierade maximala längden. Till exempel, på Windows-baserade plattformar, måste sökvägar vara kortare än 248 tecken, och filnamn måste vara kortare än 260 tecken. - eller - name
är för långt för xar.
Fil på sourcePath
innehåller ett kolon (:) mitt i strängen.
Det är omöjligt att modifiera xar-arkivet.
CreateEntry(string, Stream, XarCompressionSettings)
Skapa en enskild post inom arkivet.
public XarEntry CreateEntry(string name, Stream source, XarCompressionSettings compressionSettings = null)
Parametrar
name
string
Namnet på posten.
source
Stream
Inmatningsströmmen för posten.
compressionSettings
XarCompressionSettings
De komprimeringsinställningar som används för tillagda Aspose.Zip.Xar.XarEntry-objekt.
Returer
Xar-poster instans.
Exempel
using (var archive = new XarArchive())
{
archive.CreateEntry("data.bin", File.OpenRead("data.bin"));
archive.Save("archive.xar");
}
Undantag
name
är null.
source
är null.
name
är tom.
Det är omöjligt att modifiera xar-arkivet.
DeleteEntry(XarEntry)
Tar bort den första förekomsten av en specifik post från listan över poster.
public XarArchive DeleteEntry(XarEntry entry)
Parametrar
entry
XarEntry
Posten som ska tas bort från listan över poster.
Returer
Xar-poster instans.
Exempel
Här är hur du kan ta bort alla poster förutom den sista:
using (var archive = new XarArchive("archive.xar"))
{
while (archive.Entries.Count > 1)
archive.DeleteEntry(archive.Entries.FirstOrDefault());
archive.Save(outputXarFile);
}
Undantag
entry
är null.
Dispose()
Utför applikationsspecifika uppgifter kopplade till att frigöra, släppa eller återställa icke-hanterade resurser.
public void Dispose()
Dispose(bool)
Utför applikationsspecifika uppgifter kopplade till att frigöra, släppa eller återställa icke-hanterade resurser.
protected virtual void Dispose(bool disposing)
Parametrar
disposing
bool
Om hanterade resurser ska avyttras.
ExtractToDirectory(string)
Extraherar alla filer i arkivet till den angivna katalogen.
public void ExtractToDirectory(string destinationDirectory)
Parametrar
destinationDirectory
string
Sökvägen till katalogen där de extraherade filerna ska placeras.
Exempel
using (var archive = new XarArchive("archive.xar"))
{
archive.ExtractToDirectory("C:\\extracted");
}
Anmärkningar
Om katalogen inte finns kommer den att skapas.
Undantag
path är null
Den angivna sökvägen, filnamnet eller båda överskrider den systemdefinierade maximala längden. Till exempel, på Windows-baserade plattformar, måste sökvägar vara kortare än 248 tecken och filnamn måste vara kortare än 260 tecken.
Anroparen har inte den nödvändiga behörigheten för att få åtkomst till den befintliga katalogen.
Om katalogen inte finns, innehåller sökvägen ett kolontecken (:) som inte är en del av en enhetsetikett (“C:").
path är en sträng med noll längd, innehåller endast vita tecken eller innehåller ett eller flera ogiltiga tecken. Du kan fråga efter ogiltiga tecken genom att använda System.IO.Path.GetInvalidPathChars-metoden. - eller - path är försett med, eller innehåller, endast ett kolon-tecken (:).
Den katalog som anges av sökvägen är en fil. - eller - Nätverksnamnet är inte känt.
Arkivet är korrupt.
Save(string, XarSaveOptions)
Sparar arkivet till den angivna destinationsfilen.
public void Save(string destinationFileName, XarSaveOptions saveOptions = null)
Parametrar
destinationFileName
string
Sökvägen till arkivet som ska skapas. Om det angivna filnamnet pekar på en befintlig fil kommer den att skrivas över.
saveOptions
XarSaveOptions
Alternativ för att spara xar-arkivet med.
Undantag
destinationFileName
är null.
Det är omöjligt att modifiera xar-arkivet.
Save(Stream, XarSaveOptions)
Sparar arkivet till den angivna strömmen.
public void Save(Stream output, XarSaveOptions saveOptions = null)
Parametrar
output
Stream
Destinationström.
saveOptions
XarSaveOptions
Alternativ för att spara xar-arkivet med.
Undantag
output
är null.
output
är inte skrivbar/läslig eller inte sökbar.
Det är omöjligt att modifiera xar-arkivet.