XarArchive.CreateEntry

CreateEntry(string, FileInfo, bool, XarCompressionSettings)

Create single entry within the archive.

public XarEntry CreateEntry(string name, FileInfo fileInfo, bool openImmediately = false, 
    XarCompressionSettings compressionSettings = null)
ParameterTypeDescription
nameStringThe name of the entry.
fileInfoFileInfoThe metadata of file or folder to be compressed.
openImmediatelyBooleanTrue if open the file immediately, otherwise open the file on archive saving.
compressionSettingsXarCompressionSettingsThe compression settings used for added XarEntry item.

Return Value

Xar entry instance.

Exceptions

exceptioncondition
ArgumentNullExceptionname is null.
ArgumentExceptionname is empty.
ArgumentNullExceptionfileInfo is null.

Remarks

If the file is opened immediately with openImmediately parameter it becomes blocked until archive is disposed.

Examples

FileInfo fileInfo = new FileInfo("data.bin");
using (var archive = new XarArchive())
{
    archive.CreateEntry("test.bin", fileInfo);
    archive.Save("archive.xar");
}

See Also


CreateEntry(string, string, bool, XarCompressionSettings)

Create single entry within the archive.

public XarEntry CreateEntry(string name, string sourcePath, bool openImmediately = false, 
    XarCompressionSettings compressionSettings = null)
ParameterTypeDescription
nameStringThe name of the entry.
sourcePathStringPath to file to be compressed.
openImmediatelyBooleanTrue if open the file immediately, otherwise open the file on archive saving.
compressionSettingsXarCompressionSettingsThe compression settings used for added XarEntry item.

Return Value

Xar entry instance.

Exceptions

exceptioncondition
ArgumentNullExceptionsourcePath is null.
SecurityExceptionThe caller does not have the required permission to access.
ArgumentExceptionThe sourcePath is empty, contains only white spaces, or contains invalid characters. - or - File name, as a part of name, exceeds 100 symbols.
UnauthorizedAccessExceptionAccess to file sourcePath is denied.
PathTooLongExceptionThe specified sourcePath, file name, or both exceed the system-defined maximum length. For example, on Windows-based platforms, paths must be less than 248 characters, and file names must be less than 260 characters. - or - name is too long for xar.
NotSupportedExceptionFile at sourcePath contains a colon (:) in the middle of the string.
InvalidOperationExceptionImpossible to modify xar archive.

Remarks

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.

Examples

using (var archive = new XarArchive())
{
    archive.CreateEntry("first.bin", "data.bin");
    archive.Save("archive.xar");
}

See Also


CreateEntry(string, Stream, XarCompressionSettings)

Create single entry within the archive.

public XarEntry CreateEntry(string name, Stream source, 
    XarCompressionSettings compressionSettings = null)
ParameterTypeDescription
nameStringThe name of the entry.
sourceStreamThe input stream for the entry.
compressionSettingsXarCompressionSettingsThe compression settings used for added XarEntry item.

Return Value

Xar entry instance.

Exceptions

exceptioncondition
ArgumentNullExceptionname is null.
ArgumentNullExceptionsource is null.
ArgumentExceptionname is empty.
InvalidOperationExceptionImpossible to modify xar archive.

Examples

using (var archive = new XarArchive())
{
    archive.CreateEntry("data.bin", File.OpenRead("data.bin"));
    archive.Save("archive.xar");
}

See Also