Zip 2.1.2

Zip 2.1.2

测试已测试
Lang语言 CC
许可证 MIT
发布最后发布2022年2月

Roy Marmelstein 维护。



Zip 2.1.2

Zip - Zip and unzip files in Swift

Build Status Version Carthage compatible SPM supported

Zip

一个用于压缩和解压文件的 Swift 框架。简单易用。基于 minizip 构建。

用法

在 Swift 文件的顶部导入 Zip。

import Zip

快速功能

使用 Zip 的最容易方法是通过快速功能。这两个函数都接受本地文件路径作为 NSURLs,如果遇到错误会抛出,如果在成功时返回目的地NSURL。

do {
    let filePath = Bundle.main.url(forResource: "file", withExtension: "zip")!
    let unzipDirectory = try Zip.quickUnzipFile(filePath) // Unzip
    let zipFilePath = try Zip.quickZipFiles([filePath], fileName: "archive") // Zip
}
catch {
  print("Something went wrong")
}

高级 Zip

对于更高级的用途,Zip 提供了一些函数,允许您设置自定义的目标路径,处理带密码保护的 Zip 文件,并使用进度处理闭包。如果遇到错误则抛出,但不返回。

do {
    let filePath = Bundle.main.url(forResource: "file", withExtension: "zip")!
    let documentsDirectory = FileManager.default.urls(for:.documentDirectory, in: .userDomainMask)[0]
    try Zip.unzipFile(filePath, destination: documentsDirectory, overwrite: true, password: "password", progress: { (progress) -> () in
        print(progress)
    }) // Unzip

    let zipFilePath = documentsFolder.appendingPathComponent("archive.zip")
    try Zip.zipFiles([filePath], zipFilePath: zipFilePath, password: "password", progress: { (progress) -> () in
        print(progress)
    }) //Zip

}
catch {
  print("Something went wrong")
}

自定义文件扩展名

Zip支持默认的'.zip'和'.cbz'文件。要支持additional zip派生文件扩展名

Zip.addCustomFileExtension("file-extension-here")

[首选] 使用Swift Package Manager设置

要使用Zip与Swift Package Manager,请将其添加到您的包的依赖关系

.package(url: "https://github.com/marmelroy/Zip.git", .upToNextMinor(from: "2.1"))

使用CocoaPods设置

source 'https://github.com/CocoaPods/Specs.git'
pod 'Zip', '~> 2.1'

使用Carthage设置

要在Xcode项目中使用Carthage集成Zip,请在您的Cartfile中指定它

github "marmelroy/Zip" ~> 2.1