我试图从我的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!)
}
除了大量有关该文件的信息外,它只给我一些信息,而不是它的内容。
答案 0 :(得分:2)
它打印文件大小的原因是您的data
变量属于Data
类型。要打印实际内容,您必须先将其转换为String
:
if let fileContents = String(data: data, encoding: .utf8) {
print("Downloaded file data: \(fileContents)")
}
根据您使用的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 ...