Я не очень знаком с программированием на Swift, но мне нужно написать небольшой инструмент на Swift, который может распаковать файл (и затем запустить программу).Мне нужно распаковать файл, который не содержится в моем комплекте приложений.Он находится в /Users/me/folder1/folder2/openjdk-11.0.2.zip
Я пробовал библиотеки "Zip", "ZipFoundation" и "SSZipArchive".Из того, что я прочитал до сих пор, я думаю, что библиотекам, которые я пробовал, нужно, чтобы zip-файл находился в комплекте приложений, но я не уверен.
С «Zip» я пробовал:
_ = try Zip.quickUnzipFile(URL(string: openjdkZipUrl!.relativePath)!)
С помощью «ZipFoundation» я попытался:
let fileManager = FileManager()
let archive = openjdkZipUrl
let destinationURL = openjdkFolderUrl
do {
try fileManager.unzipItem(at: archive.url, to: destinationURL)
} catch {
}
ZipFoundation сказал мне «Значение типа« FileManager »не имеет члена« unzipItem »», но я импортировал его с import Foundation
.У меня также есть это (и другие библиотеки) в моем Podfile.
С "SSZipArchive" я попытался:
let success = SSZipArchive.unzipFile(atPath: openjdkZipUrl!.path, toDestination: openjdkFolderUrl!.path)
Используются пути
let openjdkZip = "file:///Users/" + user + "/folder1/folder2/openjdk-11.0.2.zip"
let openjdkZipUrl = URL(string: openjdkZip)
и
let openjdkFolder = "file:///Users/" + user + "/folder1/folder2/openjdk-11.0.2"
let openjdkFolderUrl = URL(string: openjdkFolder)
Действительно ли проблема в том, что zip-файл не содержится в моем комплекте?Может кто-нибудь сказать мне, что я сделал не так?Заранее спасибо