我将在Swift中查看各种可可持久存储场景。
Objective-C版本编译时不包含以下事件:
NSArray *ricArray = @[@"One",@"Two",@"Three"];
[ricArray writeToFile:@"path" atomically:true];
然而,
Swift版本不起作用。编译器认为数组没有“writeToFile”。
let docs = NSSearchPathForDirectoriesInDomains(.DocumentDirectory,.UserDomainMask,true) as Array
let pathToFile = docs[0].stringByAppendingString("/myFile.txt")
var shoppingList:[String] = ["Eggs", "Milk"]
shoppingList.writeToFile(pathToFile, atomically:true)
…swift:267:5:“[String]”没有名为“writeToFile”的成员
我做错什么了?
最佳答案
[String]
是swift的原生Array
实现,而不是NSArray
;swift的Array
没有writeToFile()
方法。不过,你可以很容易地在两者之间进行转换。这应该有效:
var shoppingList:[String] = ["Eggs", "Milk"]
(shoppingList as NSArray).writeToFile(pathToFile, atomically:true)