SWIFT:读取文件:NSData 成功,String 失败。为什么?

SWIFT: Reading file: NSData successful, String fails. Why?

我正在尝试从文件中读取大量数据。它是一个文本文件。下面一行成功,数据读入内存:

if let data = NSData(contentsOfFile: path, options: NSDataReadingOptions(), error: &error)

这一行return一个错误:

if let data = String(contentsOfFile:path, encoding: NSUTF8StringEncoding, error: &error)

但是为什么呢?文件在那里,只是功能不同。我喜欢使用第二个,因为我想将所有行拆分为数组中的单独字符串:

var array = data.componentsSeparatedByString("\n")

有什么提示吗?

附加信息:有德语变音符号,所以代码大于127。但是文件被保存为UTF-8。我怎么能 load/use 非 ascii 文本?

我尝试了所有选项并找到了出乎我意料的解决方案:

NSMacOSRomanStringEncoding

此设置也接受德语变音符号!