Zip NSData напрямую с SSZipArchive не работает

Я пытаюсь сохранить nsdata в виде заархивированного файла, например:

 let zipArch = SSZipArchive(path: "/var/mobile/Containers/Data/Application/5F3152AA-F07A-4AD2-98A9-22051C524AF2/Library/")
 print(zipArch.writeData(andCryptedData, filename: "aFileName.zip", withPassword: "aPass"))

writeData всегда дает мне false. Если я сначала сохраню файл в этой папке и заархивирую его после этого, он будет работать, но я не хочу сохранять файл временно где-либо - мне нужно решение для сохранения NSData непосредственно в zip .


person kurtanamo    schedule 12.06.2016    source источник
comment
В пути мы видим 5F3152AA-F07A-4AD2-98A9-22051C524AF2, которые могут меняться (при каждой компиляции). Например, вы должны использовать NSLibraryDirectory.   -  person Larme    schedule 12.06.2016
comment
это то, что я уже использую... Я просто добавил этот путь для этого примера.   -  person kurtanamo    schedule 12.06.2016


Ответы (1)


Правильный способ сделать nsdata напрямую в заархивированный файл выглядит следующим образом:

let zipArch = SSZipArchive(path: "path/to/library/directory/test.zip")
print(zipArch.open)
print(zipArch.writeData(aData!, filename: "aFileName.doc", withPassword: "aPass"))
print(zipArch.close)

print просто для проверки, все ли создано!

person kurtanamo    schedule 13.06.2016