我正在尝试学习新的 Swift 编程语言。看起来不错,但我很难做一些像读取本地 .txt 文件的内容这样简单的事情。
我已经尝试了几个我可以通过谷歌找到的例子,但它们给出了编译错误,就像这里的答案:Read and write data from text file 如果我稍微调整一下代码,它就可以工作,但只能从项目中的一个特殊位置读取。
为什么使用 Swift 读取 .txt 文件不像使用 Ruby 一样简单?我将如何读取位于 ~/file.txt
的文件的内容?
感谢
最佳答案
如果你的路径中有波浪号,你可以试试这个:
let location = "~/file.txt".stringByExpandingTildeInPath
let fileContent = NSString(contentsOfFile: location, encoding: NSUTF8StringEncoding, error: nil)
否则就用这个:
let location = "/Users/you/Desktop/test.txt"
let fileContent = NSString(contentsOfFile: location, encoding: NSUTF8StringEncoding, error: nil)
这为您提供了文件的字符串表示形式,我假设这就是您想要的。
您可以使用 NSData(contentsOfFile: location)
来获取二进制表示,但您通常会为音乐文件而不是文本文件这样做。
更新:在 Xcode 7 和 Swift 2 中,这不再有效。您现在可以使用
let location = NSString(string:"~/file.txt").stringByExpandingTildeInPath
let fileContent = try? NSString(contentsOfFile: location, encoding: NSUTF8StringEncoding)
关于swift - 使用 Swift 读取本地文件的简单方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25846459/