Я использую фреймворк RebekkaTouch
для загрузки файлов из моего приложения Swift на FTP-сервер, например:
if let URL = NSBundle.mainBundle().URLForResource("myFile", withExtension: "txt") {
let path = "myFile.txt"
session.upload(URL, path: path) {
(result, error) -> Void in
print("result:\n\(result), error: \(error)\n\n")
}
}
Это отлично работает для файлов, которые я вручную загружаю через Xcode. Но, похоже, я не могу найти путь к файлу, который я загружаю и динамически сохраняю локально в каталоге Documents
.
Скажем, я знаю, что у меня есть этот файл: /private/var/mobile/Containers/Data/Application/3D92EA55-01E0/Documents/SomeFile.txt
Я знаю, что это там, потому что я получаю путь после цикла NSFileManager.defaultManager()
, но я не могу преобразовать его без NSURL
, поэтому я могу его загрузить.
Любые идеи?
////ОБНОВИТЬ
Вот где умирает:
let file = "myFile.txt"
if let dir : NSString = NSSearchPathForDirectoriesInDomains(NSSearchPathDirectory.DocumentDirectory, NSSearchPathDomainMask.AllDomainsMask, true).first {
//path will be stored here
let sPath = dir.stringByAppendingPathComponent(file);
print(sPath) // printing the file path
let url: NSURL = NSURL(string: sPath)!
let destinationFile = "myFile.txt"
FTPSession.upload(url, path: destinationFile) { // <-- Dies here
(result, error) -> Void in
print("- Result:\n\(result), error: \(error)\n\n")
}
}