Ramstack.FileSystem.Zip
1.5.0
dotnet add package Ramstack.FileSystem.Zip --version 1.5.0
NuGet\Install-Package Ramstack.FileSystem.Zip -Version 1.5.0
<PackageReference Include="Ramstack.FileSystem.Zip" Version="1.5.0" />
<PackageVersion Include="Ramstack.FileSystem.Zip" Version="1.5.0" />
<PackageReference Include="Ramstack.FileSystem.Zip" />
paket add Ramstack.FileSystem.Zip --version 1.5.0
#r "nuget: Ramstack.FileSystem.Zip, 1.5.0"
#:package Ramstack.FileSystem.Zip@1.5.0
#addin nuget:?package=Ramstack.FileSystem.Zip&version=1.5.0
#tool nuget:?package=Ramstack.FileSystem.Zip&version=1.5.0
Ramstack.FileSystem.Zip
Provides an implementation of Ramstack.FileSystem based on ZIP archives.
The ZipFileSystem is not thread-safe and allows reading only one file at a time, as it relies on ZipArchive,
which does not support parallel read operations or simultaneous opening of multiple streams.
Due to this limitation, the ZipFileSystem class is marked as [Obsolete].
You may use ZipFileSystem only if you can guarantee that:
- Only one file is open for reading at a time.
- No file is accessed concurrently.
Getting Started
To install the Ramstack.FileSystem.Zip NuGet package
in your project, run the following command:
dotnet add package Ramstack.FileSystem.Zip
Usage
using Ramstack.FileSystem.Zip;
using ZipFileSystem fs = new ZipFileSystem(@"C:\MyArchive.zip");
await foreach (VirtualFile file in fs.GetFilesAsync("/"))
{
Console.WriteLine(node.Name);
}
Remark
ZipFileSystem is a read-only implementation and does not support for modifying operations.
Related Projects
- Ramstack.FileSystem.Abstractions - Provides a virtual file system abstraction.
- Ramstack.FileSystem.Physical - Provides an implementation based on the local file system.
- Ramstack.FileSystem.Azure - Provides an implementation using Azure Blob storage.
- Ramstack.FileSystem.Amazon - Provides an implementation using Amazon S3 storage.
- Ramstack.FileSystem.Google - Provides an implementation using Google Cloud storage.
- Ramstack.FileSystem.Readonly - Provides a read-only wrapper for the underlying file system.
- Ramstack.FileSystem.Globbing - Wraps the file system, filtering files and directories using glob patterns.
- Ramstack.FileSystem.Prefixed - Adds a prefix to file paths within the underlying file system.
- Ramstack.FileSystem.Sub - Wraps the underlying file system, restricting access to a specific subpath.
- Ramstack.FileSystem.Adapters - Provides integration with
Microsoft.Extensions.FileProviders. - Ramstack.FileSystem.Composite - Provides an implementation that combines multiple file systems into a single composite file system.
Supported versions
Contributions
Bug reports and contributions are welcome.
License
This package is released as open source under the MIT License. See the LICENSE file for more details.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net6.0 is compatible. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 was computed. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
-
net6.0
- Ramstack.FileSystem.Abstractions (>= 1.5.0)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
