Entpacken Sie die Dateien in swift
Wie man über das entpacken einer Datei im swift? In Objective-C, die ich verwendet, SSZipArchive und ich liebte es. Wie man im code unten. Ich vermute, wenn ich entscheiden, zu halten SSZipArchive, Ich werde eine Brücke, eine Objective-C-Datei auf meinem Swift-Datei. gibt es eine aktualisierte Dritter, oder besser noch Apple-Dokumentation zu entpacken einer Datei im Swift?
NSString *zipPath = [self.globalFileStrucure stringByAppendingPathComponent:@"zipfile.zip"];
[data writeToFile:zipPath options:0 error:&error];
BOOL unZipped = 0;
unZipped = [SSZipArchive unzipFileAtPath:zipPath toDestination:self.globalFileStrucure];
pod 'SSZipArchive'
ist vollständig kompatibel mit Swift.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Swift 2 (Update):
So funktioniert es bei mir ohne Fehler:
gehören die Bibliothek zu Ihrem Projekt Swift-ObjC-Brücke (xxxx-Bridge-Header.h)
#import "SSZipArchive.h"
link die Bibliothek "libz.tbd" - Teil von iOS
(Projekt -> Build-Phasen -> Link-Binary Mit Bibliotheken -> +)
Bereit, um zip/unzip
Wenn Sie eine der UIKit oder AppKit, Sie arbeiten bereits mit einem Swift-ObjC-Brücke. Keine Sorge, benutzen Sie einfach die Bibliothek, die Sie kennen und lieben!
Fand ich WPZipArchive ist einfach zu bedienen und zu installieren, mithilfe von Cocoapods. Wer Interesse hat kann Lesen Sie die Anleitung unten:
1) Öffnen Sie Das Terminal.app von Ihrem Mac-Anwendung/Dienstprogramme oder aus Ihrem Launchpad
2) Geben Sie
sudo gem update --system
in Ihrem Terminal, um sicherzustellen, dass Ihre Ruby ist aktuell3) Geben Sie
sudo gem install cocoapods
zu installieren cocoapods (Dieser Prozess wird wahrscheinlich ein paar Minuten dauern, einfach warten, es zu zeigen, Abgeschlossen)4) Geben Sie
pod setup
setup cocoapods (von hier aus weiter, Sie brauchen nicht zu verwendensudo
Befehl, nurpod
)5) Starten Sie Xcode und erstellen Sie ein neues Projekt (Wenn Sie nicht über vorhandene Projekt erstellt). Überspringen Sie diesen Schritt, wenn Sie hatte ein Xcode-Projekt erstellt.
6) BEENDEN Sie Xcode Programm. Ja, schließen Sie Ihr Projekt und beenden Sie die Xcode-Programm
7) Zurück zum Terminal und geben Sie
cd Path/To/Folder/Containing/YourProject
ersetzen Sie diesen Pfad/Zum/Ordner/Mit/YourProject mit Ihrem eigenen Verzeichnispfad8) Geben Sie
pod init
9) Geben Sie
open -a Xcode Podfile
zu öffnen, das podfile mit Xcode Programmieren. Die Standard-Podfile sieht wie folgt aus:platform :osx, '10.10'
ist, geben Sie die Mindest-Ziel der Bereitstellung, die Sie ändern können, um was auch immer Sie bevorzugen.10) Speichern und Schließen Sie Podfile (in der Nähe von Xcode zu)
11) Zurück zum Terminal und geben Sie
pod install
dieses ist zum installieren der WPZipArchive, dies wird einige Minuten dauern.12) Sie fertig sind die Installation WPZipArchive.
Starten Sie Xcode Projekt:
WICHTIG: Von nun an müssen Sie starten Sie Ihre Xcode-Projekt mit der .xcworkspace NICHT .xcodeproj
Auf dem ViewController.swift oder jede .swift-Datei, die Sie verwenden möchten, zip oder unzip-Methode, fügen Sie einfach importieren WPZipArchive wie unten:
Zip-Datei, rufen Sie die Methode wie diese:
Entpacken einer Datei rufen Sie die Methode wie diese:
Das ist alles und es funktioniert und einfach zu implementieren.
Genießen, packen und entpacken von
Funktioniert es mit folgenden Peter Kreinz.
Achten Sie auf Schritt 2 wie folgt:
Bitte wählen Sie den 'Gruppen Erstellen', wenn kopieren Sie das Verzeichnis "SSZipArchive" zu Ihrem Projekt (Drag&Drop)
@screenworker (Unome) fragte, ob es einen Ausschlag von Fehlern, die alle nehmen Bezug auf die libz Rahmen. Ich lief in etwas ähnlich. Den link Schritt, produziert Fehler über "Symbole" wie "_crc32". Alle diese Symbole finden Sie in der libz.tbd-stub.
Ist die Frage in diesem Fall ist, dass ich hatte irrtümlich Hinzugefügt, die libz.tbd-Referenz auf das Test-Ziel, nicht das Ziel benannt, für das Projekt selbst. Dies kann überprüft werden, um den Build-Phasen-Anzeige: