如何使用swift和Dropbox API

时间:2017-11-06 06:16:27

标签: swift dropbox-api swiftydropbox

我试图从我的Dropbox帐户下载常规的.txt文件,我已经将其与令牌链接,但我不知道如何获取内容。 我唯一能找到的是:

            // Download a file
            client.filesDownload(path: "/hello.txt").response { response, error in
                if let (metadata, data) = response {
                    println("Dowloaded file name: \(metadata.name)")
                    println("Downloaded file data: \(data)")
                } else {
                    println(error!)
                }

除了大量有关该文件的信息外,它只给我一些信息,而不是它的内容。

1 个答案:

答案 0 :(得分:2)

它打印文件大小的原因是您的data变量属于Data类型。要打印实际内容,您必须先将其转换为String

if let fileContents = String(data: data, encoding: .utf8) {
    print("Downloaded file data: \(fileContents)")
}

Swift 1

根据您使用的println,您可能正在使用旧版本的Swift。在这种情况下,代码应如下所示:

if let fileContents = NSString(data: data, encoding: NSUTF8StringEncoding) {
    println("Downloaded file data: \(fileContents)")
}

关于Data类型的好处是你可以直接转换它,例如,JSON:

guard let json = try JSONSerialization.jsonObject(with: data, options: []) as? [String: Any] else {
    return
}
//... do something with json ...