0
func readWriteData(){
let paths = NSSearchPathForDirectoriesInDomains(.CachesDirectory, .UserDomainMask, true)
let cachePath = paths.first
// let bundleName = NSBundle.mainBundle().infoDictionary?["CFBundleVersion"] as? String
let filePath = NSURL(fileURLWithPath: cachePath!).URLByAppendingPathComponent("cachedProducts.plist").path
var isDir : ObjCBool = false
var error: NSError?
if NSFileManager.defaultManager().fileExistsAtPath(filePath!, isDirectory: &isDir) {
var plistArray = NSArray(contentsOfFile: filePath!)
print(plistArray)//retrieving stored data
}else {
do {
try NSFileManager.defaultManager().createDirectoryAtPath(filePath!, withIntermediateDirectories: false, attributes: nil)
var cachedArray = [AnyObject]()
cachedArray.append("Harsh")
let cachedProductarray : NSArray = cachedArray
cachedProductarray.writeToFile(filePath!, atomically: true)
//Storing data to plist
} catch let error as NSError {
NSLog("\(error.localizedDescription)")
}
}
}
plistArrayを印刷しようとするとnilが返されます。解決策を教えてください。私はキャッシュディレクトリとドキュメントディレクトリを使って試しました。両方とも同じシナリオです読み込みplistの配列データを書き込めません
するvar strの:NSStringの= "asgg" DO { が(アトミックfilePathに!:真、エンコーディング:NSUTF8StringEncoding)str.writeToFileを試してみてください } catchがNSError { 印刷( "\(error.localizedDescription)" とエラーをしましょう) } NSStringを記述しようとしているとき - "cachedProductsssssss.plist"ファイルを "Cache"フォルダに保存できませんでした。 –
パスを印刷して、期待通りのものかどうかを確認してください。 – vadian