15 return Open(archiveFileName, mode,
null);
43 FileStream fileStream =
new FileStream(archiveFileName, mode2, access, share, 4096, useAsync:
false);
46 return new ZipArchive(fileStream, mode, leaveOpen:
false, entryNameEncoding);
57 DoCreateFromDirectory(sourceDirectoryName, destinationArchiveFileName,
null, includeBaseDirectory:
false,
null);
62 DoCreateFromDirectory(sourceDirectoryName, destinationArchiveFileName, compressionLevel, includeBaseDirectory,
null);
67 DoCreateFromDirectory(sourceDirectoryName, destinationArchiveFileName, compressionLevel, includeBaseDirectory, entryNameEncoding);
73 destinationArchiveFileName =
Path.
GetFullPath(destinationArchiveFileName);
77 string fullName = directoryInfo.
FullName;
78 if (includeBaseDirectory && directoryInfo.
Parent !=
null)
88 int length = item.FullName.Length - fullName.Length;
92 zipArchive.DoCreateEntryFromFile(
item.FullName, entryName, compressionLevel);
97 zipArchive.CreateEntry(entryName2);
100 if (includeBaseDirectory && flag)
113 ExtractToDirectory(sourceArchiveFileName, destinationDirectoryName,
null, overwriteFiles:
false);
116 public static void ExtractToDirectory(
string sourceArchiveFileName,
string destinationDirectoryName,
bool overwriteFiles)
118 ExtractToDirectory(sourceArchiveFileName, destinationDirectoryName,
null, overwriteFiles);
123 ExtractToDirectory(sourceArchiveFileName, destinationDirectoryName, entryNameEncoding, overwriteFiles:
false);
126 public static void ExtractToDirectory(
string sourceArchiveFileName,
string destinationDirectoryName,
Encoding? entryNameEncoding,
bool overwriteFiles)
128 if (sourceArchiveFileName ==
null)
133 source.ExtractToDirectory(destinationDirectoryName, overwriteFiles);
static ArrayPool< T > Shared
static bool IsDirEmpty(DirectoryInfo possiblyEmptyDir)
static string EntryFromPath(string entry, int offset, int length, ref char[] buffer, bool appendPathSeparator=false)
static void ExtractToDirectory(string sourceArchiveFileName, string destinationDirectoryName, Encoding? entryNameEncoding)
static void ExtractToDirectory(string sourceArchiveFileName, string destinationDirectoryName, bool overwriteFiles)
static void CreateFromDirectory(string sourceDirectoryName, string destinationArchiveFileName, CompressionLevel compressionLevel, bool includeBaseDirectory)
static ZipArchive Open(string archiveFileName, ZipArchiveMode mode)
static ZipArchive OpenRead(string archiveFileName)
static void DoCreateFromDirectory(string sourceDirectoryName, string destinationArchiveFileName, CompressionLevel? compressionLevel, bool includeBaseDirectory, Encoding entryNameEncoding)
static void ExtractToDirectory(string sourceArchiveFileName, string destinationDirectoryName)
static void CreateFromDirectory(string sourceDirectoryName, string destinationArchiveFileName, CompressionLevel compressionLevel, bool includeBaseDirectory, Encoding? entryNameEncoding)
static void CreateFromDirectory(string sourceDirectoryName, string destinationArchiveFileName)
static ZipArchive Open(string archiveFileName, ZipArchiveMode mode, Encoding? entryNameEncoding)
static void ExtractToDirectory(string sourceArchiveFileName, string destinationDirectoryName, Encoding? entryNameEncoding, bool overwriteFiles)
IEnumerable< FileSystemInfo > EnumerateFileSystemInfos()
override void Dispose(bool disposing)
static string GetFullPath(string path)