swift 3 jsonをデスクトップに保存し、砂箱からjsonを読み込む
3338 ワード
//地元の砂箱経路を取得する
注意:jsonファイルではフォーマットが正しくなければなりません.そうしないと、JSONファイルに移行するとエラーが発生し、JSONでは「{}」で「[]」を表します.
砂箱からjsonファイルを読み込む
let docDir = NSSearchPathForDirectoriesInDomains(.documentDirectory, .userDomainMask, true)[0]
let jsonPath = (docDir as NSString).appendingPathComponent("main.json")
// data
data?.write(toFile: jsonPath, atomically: true)
注意:jsonファイルではフォーマットが正しくなければなりません.そうしないと、JSONファイルに移行するとエラーが発生し、JSONでは「{}」で「[]」を表します.
砂箱からjsonファイルを読み込む
// 0. json
let docDir = NSSearchPathForDirectoriesInDomains(.documentDirectory, .userDomainMask, true)[0]
let jsonPath = (docDir as NSString).appendingPathComponent("main.json")
// data
var data = NSData(contentsOfFile: jsonPath)
// data , , json
if data == nil {
// bundle data
let path = Bundle.main.path(forResource: "main.json", ofType: nil)
data = NSData(contentsOfFile: path!)
}
// data , json
//
guard let array = try? JSONSerialization.jsonObject(with: data! as Data, options: []) as? [[String : Any]]
else{
return
}