我将在Swift中查看各种Cocoa持久存储方案。
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'的成员
我做错了什么?
答案 0 :(得分:2)
[String]
是swift的原生Array
实施,而不是NSArray
; swift的Array
没有writeToFile()
方法。但是,您可以轻松地在两者之间进行投射。这应该有效:
var shoppingList:[String] = ["Eggs", "Milk"]
(shoppingList as NSArray).writeToFile(pathToFile, atomically:true)