XarArchive
Inheritance: java.lang.Object
All Implemented Interfaces: com.aspose.zip.IArchive, java.lang.AutoCloseable
public class XarArchive implements IArchive, AutoCloseable
Denna klass representerar en xar-arkivfil.
Konstruktörer
| Konstruktor | Beskrivning |
|---|---|
| XarArchive() | Initierar en ny instans av klassen XarArchive. |
| XarArchive(XarCompressionSettings defaultCompressionSettings) | Initierar en ny instans av klassen XarArchive. |
| XarArchive(InputStream sourceStream) | Initierar en ny instans av klassen XarArchive och skapar en postlista som kan extraheras från arkivet. |
| XarArchive(InputStream sourceStream, XarLoadOptions loadOptions) | Initierar en ny instans av klassen XarArchive och skapar en postlista som kan extraheras från arkivet. |
| XarArchive(String path) | Initierar en ny instans av klassen XarArchive och skapar en postlista som kan extraheras från arkivet. |
| XarArchive(String path, XarLoadOptions loadOptions) | Initierar en ny instans av klassen XarArchive och skapar en postlista som kan extraheras från arkivet. |
Metoder
XarArchive()
public XarArchive()
Initierar en ny instans av klassen XarArchive.
Följande exempel visar hur man komprimerar en fil.
try (XarArchive archive = new XarArchive()) { archive.createEntry(“first.bin”, “data.bin”); archive.save("archive.xar"); }
### XarArchive(XarCompressionSettings defaultCompressionSettings) {#XarArchive-com.aspose.zip.XarCompressionSettings-}
public XarArchive(XarCompressionSettings defaultCompressionSettings)
Initializes a new instance of the [XarArchive](../../com.aspose.zip/xararchive) class.
The following example shows how to compress a file.
try (XarArchive archive = new XarArchive()) {
archive.createEntry("first.bin", "data.bin");
archive.save("archive.xar");
}
```
**Parameters:**
| Parameter | Typ | Beskrivning |
| --- | --- | --- |
| defaultCompressionSettings | [XarCompressionSettings](../../com.aspose.zip/xarcompressionsettings) | standardinställningarna för komprimering, tillämpade på alla poster i arkivet |
### XarArchive(InputStream sourceStream) {#XarArchive-java.io.InputStream-}
```
public XarArchive(InputStream sourceStream)
```
Initierar en ny instans av klassen [XarArchive](../../com.aspose.zip/xararchive) och skapar en postlista som kan extraheras från arkivet.
Följande exempel visar hur man extraherar alla poster till en katalog.
```
try (XarArchive archive = new XarArchive(new FileInputStream(“archive.xar”))) { archive.extractToDirectory("C:\\extracted"); } catch (IOException ex) { }
This constructor does not unpack any entry. See [XarFileEntry.open()](../../com.aspose.zip/xarfileentry\#open--) method for unpacking.
**Parameters:**
| Parameter | Type | Description |
| --- | --- | --- |
| sourceStream | java.io.InputStream | the source of the archive |
### XarArchive(InputStream sourceStream, XarLoadOptions loadOptions) {#XarArchive-java.io.InputStream-com.aspose.zip.XarLoadOptions-}
public XarArchive(InputStream sourceStream, XarLoadOptions loadOptions)
Initializes a new instance of the [XarArchive](../../com.aspose.zip/xararchive) class and composes an entry list can be extracted from the archive.
The following example shows how to extract all the entries to a directory.
try (XarArchive archive = new XarArchive(new FileInputStream("archive.xar"))) {
archive.extractToDirectory("C:\\extracted");
} catch (IOException ex) {
}
```
Denna konstruktor packar inte upp någon post. Se metoden [XarFileEntry.open()](../../com.aspose.zip/xarfileentry\#open--) för uppackning.
**Parameters:**
| Parameter | Typ | Beskrivning |
| --- | --- | --- |
| sourceStream | java.io.InputStream | källan till arkivet |
| loadOptions | [XarLoadOptions](../../com.aspose.zip/xarloadoptions) | alternativen för att ladda arkivet med |
### XarArchive(String path) {#XarArchive-java.lang.String-}
```
public XarArchive(String path)
```
Initierar en ny instans av klassen [XarArchive](../../com.aspose.zip/xararchive) och skapar en postlista som kan extraheras från arkivet.
Följande exempel visar hur man extraherar alla poster till en katalog.
```
try (XarArchive archive = new XarArchive("archive.xar")) { archive.extractToDirectory("C:\\extracted"); }
This constructor does not unpack any entry. See [XarFileEntry.open()](../../com.aspose.zip/xarfileentry\#open--) method for unpacking.
**Parameters:**
| Parameter | Type | Description |
| --- | --- | --- |
| path | java.lang.String | the path to the archive file |
### XarArchive(String path, XarLoadOptions loadOptions) {#XarArchive-java.lang.String-com.aspose.zip.XarLoadOptions-}
public XarArchive(String path, XarLoadOptions loadOptions)
Initializes a new instance of the [XarArchive](../../com.aspose.zip/xararchive) class and composes an entry list can be extracted from the archive.
The following example shows how to extract all the entries to a directory.
try (XarArchive archive = new XarArchive("archive.xar")) {
archive.extractToDirectory("C:\\extracted");
}
```
Denna konstruktor packar inte upp någon post. Se metoden [XarFileEntry.open()](../../com.aspose.zip/xarfileentry\#open--) för uppackning.
**Parameters:**
| Parameter | Typ | Beskrivning |
| --- | --- | --- |
| path | java.lang.String | sökvägen till arkivfilen |
| loadOptions | [XarLoadOptions](../../com.aspose.zip/xarloadoptions) | alternativen för att ladda arkivet med |
### close() {#close--}
```
public void close()
```
### createEntries(File directory) {#createEntries-java.io.File-}
```
public final XarArchive createEntries(File directory)
```
Lägger till alla filer och kataloger rekursivt i den angivna katalogen i arkivet.
```
try (FileOutputStream xarFile = new FileOutputStream(“archive.xar”)) { try (XarArchive archive = new XarArchive()) { archive.createEntries(new java.io.File(“C:\folder”), false); archive.save(xarFile); } } catch (IOException ex) { }
**Parameters:**
| Parameter | Type | Description |
| --- | --- | --- |
| directory | java.io.File | directory to compress |
**Returns:**
[XarArchive](../../com.aspose.zip/xararchive) - Xar entry instance
### createEntries(File directory, boolean includeRootDirectory) {#createEntries-java.io.File-boolean-}
public final XarArchive createEntries(File directory, boolean includeRootDirectory)
Adds to the archive all the files and directories recursively in the directory given.
try (FileOutputStream xarFile = new FileOutputStream("archive.xar")) {
try (XarArchive archive = new XarArchive()) {
archive.createEntries(new java.io.File("C:\\folder"), false);
archive.save(xarFile);
}
} catch (IOException ex) {
}
```
**Parameters:**
| Parameter | Typ | Beskrivning |
| --- | --- | --- |
| directory | java.io.File | katalog att komprimera |
| includeRootDirectory | boolean | indikerar om rotkatalogen själv ska inkluderas eller inte |
**Returns:**
[XarArchive](../../com.aspose.zip/xararchive) - Xar entry instance
### createEntries(File directory, boolean includeRootDirectory, XarCompressionSettings compressionSettings) {#createEntries-java.io.File-boolean-com.aspose.zip.XarCompressionSettings-}
```
public final XarArchive createEntries(File directory, boolean includeRootDirectory, XarCompressionSettings compressionSettings)
```
Lägger till alla filer och kataloger rekursivt i den angivna katalogen i arkivet.
```
try (FileOutputStream xarFile = new FileOutputStream(“archive.xar”)) { try (XarArchive archive = new XarArchive()) { archive.createEntries(new java.io.File(“C:\folder”), false); archive.save(xarFile); } } catch (IOException ex) { }
**Parameters:**
| Parameter | Type | Description |
| --- | --- | --- |
| directory | java.io.File | directory to compress |
| includeRootDirectory | boolean | indicates whether to include the root directory itself or not |
| compressionSettings | [XarCompressionSettings](../../com.aspose.zip/xarcompressionsettings) | the compression settings used for added [XarEntry](../../com.aspose.zip/xarentry) items |
**Returns:**
[XarArchive](../../com.aspose.zip/xararchive) - Xar entry instance
### createEntries(String sourceDirectory) {#createEntries-java.lang.String-}
public final XarArchive createEntries(String sourceDirectory)
Adds to the archive all the files and directories recursively in the directory given.
try (FileOutputStream xarFile = new FileOutputStream("archive.xar")) {
try (XarArchive archive = new XarArchive()) {
archive.createEntries("C:\\folder", false);
archive.save(xarFile);
}
} catch (IOException ex) {
}
```
**Parameters:**
| Parameter | Typ | Beskrivning |
| --- | --- | --- |
| sourceDirectory | java.lang.String | katalog att komprimera |
**Returns:**
[XarArchive](../../com.aspose.zip/xararchive) - Xar entry instance
### createEntries(String sourceDirectory, boolean includeRootDirectory) {#createEntries-java.lang.String-boolean-}
```
public final XarArchive createEntries(String sourceDirectory, boolean includeRootDirectory)
```
Lägger till alla filer och kataloger rekursivt i den angivna katalogen i arkivet.
```
try (FileOutputStream xarFile = new FileOutputStream(“archive.xar”)) { try (XarArchive archive = new XarArchive()) { archive.createEntries(“C:\folder”, false); archive.save(xarFile); } } catch (IOException ex) { }
**Parameters:**
| Parameter | Type | Description |
| --- | --- | --- |
| sourceDirectory | java.lang.String | directory to compress |
| includeRootDirectory | boolean | indicates whether to include the root directory itself or not |
**Returns:**
[XarArchive](../../com.aspose.zip/xararchive) - Xar entry instance
### createEntries(String sourceDirectory, boolean includeRootDirectory, XarCompressionSettings compressionSettings) {#createEntries-java.lang.String-boolean-com.aspose.zip.XarCompressionSettings-}
public final XarArchive createEntries(String sourceDirectory, boolean includeRootDirectory, XarCompressionSettings compressionSettings)
Adds to the archive all the files and directories recursively in the directory given.
try (FileOutputStream xarFile = new FileOutputStream("archive.xar")) {
try (XarArchive archive = new XarArchive()) {
archive.createEntries("C:\\folder", false);
archive.save(xarFile);
}
} catch (IOException ex) {
}
```
**Parameters:**
| Parameter | Typ | Beskrivning |
| --- | --- | --- |
| sourceDirectory | java.lang.String | katalog att komprimera |
| includeRootDirectory | boolean | indikerar om rotkatalogen själv ska inkluderas eller inte |
| compressionSettings | [XarCompressionSettings](../../com.aspose.zip/xarcompressionsettings) | de komprimeringsinställningarna som används för tillagda [XarEntry](../../com.aspose.zip/xarentry) objekt |
**Returns:**
[XarArchive](../../com.aspose.zip/xararchive) - Xar entry instance
### createEntry(String name, File file) {#createEntry-java.lang.String-java.io.File-}
```
public final XarEntry createEntry(String name, File file)
```
Skapa en enskild post i arkivet.
```
java.io.File file = new java.io.File(“data.bin”); try (XarArchive archive = new XarArchive()) { archive.createEntry("test.bin", file); archive.save("archive.xar"); }
**Parameters:**
| Parameter | Type | Description |
| --- | --- | --- |
| name | java.lang.String | the name of the entry |
| file | java.io.File | the metadata of file or folder to be compressed |
**Returns:**
[XarEntry](../../com.aspose.zip/xarentry) - Xar entry instance
### createEntry(String name, File file, boolean openImmediately) {#createEntry-java.lang.String-java.io.File-boolean-}
public final XarEntry createEntry(String name, File file, boolean openImmediately)
Create a single entry within the archive.
java.io.File file = new java.io.File("data.bin");
try (XarArchive archive = new XarArchive()) {
archive.createEntry("test.bin", file);
archive.save("archive.xar");
}
```
Om filen öppnas omedelbart med `openImmediately`-parametern blir den låst tills arkivet frigörs
**Parameters:**
| Parameter | Typ | Beskrivning |
| --- | --- | --- |
| namn | java.lang.String | namnet på posten |
| file | java.io.File | metadata för fil eller mapp som ska komprimeras |
| openImmediately | boolean | true om filen öppnas omedelbart, annars öppnas filen vid arkivsparning. |
**Returns:**
[XarEntry](../../com.aspose.zip/xarentry) - Xar entry instance
### createEntry(String name, File file, boolean openImmediately, XarCompressionSettings compressionSettings) {#createEntry-java.lang.String-java.io.File-boolean-com.aspose.zip.XarCompressionSettings-}
```
public final XarEntry createEntry(String name, File file, boolean openImmediately, XarCompressionSettings compressionSettings)
```
Skapa en enskild post i arkivet.
```
java.io.File file = new java.io.File(“data.bin”); try (XarArchive archive = new XarArchive()) { archive.createEntry("test.bin", file); archive.save("archive.xar"); }
If the file is opened immediately with `openImmediately` parameter it becomes blocked until archive is disposed
**Parameters:**
| Parameter | Type | Description |
| --- | --- | --- |
| name | java.lang.String | the name of the entry |
| file | java.io.File | the metadata of file or folder to be compressed |
| openImmediately | boolean | true, if open the file immediately, otherwise open the file on archive saving. |
| compressionSettings | [XarCompressionSettings](../../com.aspose.zip/xarcompressionsettings) | the compression settings used for added [XarEntry](../../com.aspose.zip/xarentry) item |
**Returns:**
[XarEntry](../../com.aspose.zip/xarentry) - Xar entry instance
### createEntry(String name, InputStream source) {#createEntry-java.lang.String-java.io.InputStream-}
public final XarEntry createEntry(String name, InputStream source)
Create a single entry within the archive.
try (XarArchive archive = new XarArchive()) {
archive.createEntry("data.bin", new FileInputStream("data.bin"));
archive.save("archive.xar");
} catch (IOException ex) {
}
```
**Parameters:**
| Parameter | Typ | Beskrivning |
| --- | --- | --- |
| namn | java.lang.String | namnet på posten |
| source | java.io.InputStream | indataströmmen för posten |
**Returns:**
[XarEntry](../../com.aspose.zip/xarentry) - Xar entry instance
### createEntry(String name, InputStream source, XarCompressionSettings compressionSettings) {#createEntry-java.lang.String-java.io.InputStream-com.aspose.zip.XarCompressionSettings-}
```
public final XarEntry createEntry(String name, InputStream source, XarCompressionSettings compressionSettings)
```
Skapa en enskild post i arkivet.
```
try (XarArchive archive = new XarArchive()) { archive.createEntry(“data.bin”, new FileInputStream(“data.bin”)); archive.save("archive.xar"); } catch (IOException ex) { }
**Parameters:**
| Parameter | Type | Description |
| --- | --- | --- |
| name | java.lang.String | the name of the entry |
| source | java.io.InputStream | the input stream for the entry |
| compressionSettings | [XarCompressionSettings](../../com.aspose.zip/xarcompressionsettings) | the compression settings used for added [XarEntry](../../com.aspose.zip/xarentry) item |
**Returns:**
[XarEntry](../../com.aspose.zip/xarentry) - Xar entry instance
### createEntry(String name, String sourcePath) {#createEntry-java.lang.String-java.lang.String-}
public final XarEntry createEntry(String name, String sourcePath)
Create a single entry within the archive.
try (XarArchive archive = new XarArchive()) {
archive.createEntry("first.bin", "data.bin");
archive.save("archive.xar");
}
```
Postnamnet sätts enbart inom `name`-parametern. Filnamnet som anges i `sourcePath`-parametern påverkar inte postnamnet.
**Parameters:**
| Parameter | Typ | Beskrivning |
| --- | --- | --- |
| namn | java.lang.String | namnet på posten |
| sourcePath | java.lang.String | sökvägen till filen som ska komprimeras |
**Returns:**
[XarEntry](../../com.aspose.zip/xarentry) - Xar entry instance
### createEntry(String name, String sourcePath, boolean openImmediately) {#createEntry-java.lang.String-java.lang.String-boolean-}
```
public final XarEntry createEntry(String name, String sourcePath, boolean openImmediately)
```
Skapa en enskild post i arkivet.
```
try (XarArchive archive = new XarArchive()) { archive.createEntry(“first.bin”, “data.bin”); archive.save("archive.xar"); }
The entry name is solely set within `name` parameter. The file name provided in `sourcePath` parameter does not affect the entry name.
If the file is opened immediately with `openImmediately` parameter it becomes blocked until archive is disposed.
**Parameters:**
| Parameter | Type | Description |
| --- | --- | --- |
| name | java.lang.String | the name of the entry |
| sourcePath | java.lang.String | the path to the file to be compressed |
| openImmediately | boolean | true, if open the file immediately, otherwise open the file on archive saving |
**Returns:**
[XarEntry](../../com.aspose.zip/xarentry) - Xar entry instance
### createEntry(String name, String sourcePath, boolean openImmediately, XarCompressionSettings compressionSettings) {#createEntry-java.lang.String-java.lang.String-boolean-com.aspose.zip.XarCompressionSettings-}
public final XarEntry createEntry(String name, String sourcePath, boolean openImmediately, XarCompressionSettings compressionSettings)
Create a single entry within the archive.
try (XarArchive archive = new XarArchive()) {
archive.createEntry("first.bin", "data.bin");
archive.save("archive.xar");
}
```
Postnamnet sätts 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 frigörs.
**Parameters:**
| Parameter | Typ | Beskrivning |
| --- | --- | --- |
| namn | java.lang.String | namnet på posten |
| sourcePath | java.lang.String | sökvägen till filen som ska komprimeras |
| openImmediately | boolean | true, om filen ska öppnas omedelbart, annars öppnas filen vid arkivsparning |
| compressionSettings | [XarCompressionSettings](../../com.aspose.zip/xarcompressionsettings) | de komprimeringsinställningarna som används för tillagt [XarEntry](../../com.aspose.zip/xarentry) objekt |
**Returns:**
[XarEntry](../../com.aspose.zip/xarentry) - Xar entry instance
### deleteEntry(XarEntry entry) {#deleteEntry-com.aspose.zip.XarEntry-}
```
public final XarArchive deleteEntry(XarEntry entry)
```
Tar bort den första förekomsten av en specifik post från postlistan.
Så här kan du ta bort alla poster förutom den sista:
```
try (XarArchive archive = new XarArchive("archive.xar")) { while (archive.getEntries().size() > 1) archive.deleteEntry(archive.getEntries().get(0)); archive.save(“outputXarFile.xar”); }
**Parameters:**
| Parameter | Type | Description |
| --- | --- | --- |
| entry | [XarEntry](../../com.aspose.zip/xarentry) | the entry to remove from the entries list |
**Returns:**
[XarArchive](../../com.aspose.zip/xararchive) - Xar entry instance
### extractToDirectory(String destinationDirectory) {#extractToDirectory-java.lang.String-}
public final void extractToDirectory(String destinationDirectory)
Extracts all the files in the archive to the directory provided.
try (XarArchive archive = new XarArchive("archive.xar")) {
archive.extractToDirectory("C:\\extracted");
}
```
**Parameters:**
| Parameter | Typ | Beskrivning |
| --- | --- | --- |
| | destinationDirectory | java.lang.String | sökvägen till katalogen där de extraherade filerna ska placeras. |
Om katalogen inte finns, kommer den att skapas |
### getEntries() {#getEntries--}
```
public final List<XarEntry> getEntries()
```
Hämtar poster av typen [XarEntry](../../com.aspose.zip/xarentry) som utgör arkivet.
**Returns:**
java.util.List<com.aspose.zip.XarEntry> - poster av typen [XarEntry](../../com.aspose.zip/xarentry) som utgör arkivet
### getFileEntries() {#getFileEntries--}
```
public final Iterable<IArchiveFileEntry> getFileEntries()
```
Hämtar poster av typen [IArchiveFileEntry](../../com.aspose.zip/iarchivefileentry) som utgör xar‑arkivet.
**Returns:**
java.lang.Iterable<com.aspose.zip.IArchiveFileEntry> - poster av typen [IArchiveFileEntry](../../com.aspose.zip/iarchivefileentry) som utgör xar-arkivet
### getFormat() {#getFormat--}
```
public final ArchiveFormat getFormat()
```
Hämtar arkivformatet.
**Returns:**
[ArchiveFormat](../../com.aspose.zip/archiveformat) - the archive format
### save(OutputStream output) {#save-java.io.OutputStream-}
```
public final void save(OutputStream output)
```
Sparar arkivet till den angivna strömmen.
För stora arkiv, använd [save(String)](../../com.aspose.zip/xararchive\#save-String-) istället för att spara till java.io.FileOutputStream.
**Parameters:**
| Parameter | Typ | Beskrivning |
| --- | --- | --- |
| utdata | java.io.OutputStream | destinationsströmmen |
### save(OutputStream output, XarSaveOptions saveOptions) {#save-java.io.OutputStream-com.aspose.zip.XarSaveOptions-}
```
public final void save(OutputStream output, XarSaveOptions saveOptions)
```
Sparar arkivet till den angivna strömmen.
För stora arkiv, använd [save(String)](../../com.aspose.zip/xararchive\#save-String-) istället för att spara till java.io.FileOutputStream.
**Parameters:**
| Parameter | Typ | Beskrivning |
| --- | --- | --- |
| utdata | java.io.OutputStream | destinationsströmmen |
| saveOptions | [XarSaveOptions](../../com.aspose.zip/xarsaveoptions) | alternativen för att spara xar-arkivet med |
### save(String destinationFileName) {#save-java.lang.String-}
```
public final void save(String destinationFileName)
```
Sparar arkivet till den angivna destinationsfilen.
**Parameters:**
| Parameter | Typ | Beskrivning |
| --- | --- | --- |
| destinationFileName | java.lang.String | sökvägen till arkivet som ska skapas. Om det angivna filnamnet pekar på en befintlig fil kommer den att skrivas över |
### save(String destinationFileName, XarSaveOptions saveOptions) {#save-java.lang.String-com.aspose.zip.XarSaveOptions-}
```
public final void save(String destinationFileName, XarSaveOptions saveOptions)
```
Sparar arkivet till den angivna destinationsfilen.
**Parameters:**
| Parameter | Typ | Beskrivning |
| --- | --- | --- |
| destinationFileName | java.lang.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](../../com.aspose.zip/xarsaveoptions) | alternativen för att spara xar-arkivet med |