Swift3 jsonをローカルから読み込む
はじめに
apiと実際につなぐ前にダミーデータで実装するときなどに
jsonファイルをローカルに保存しておいてそこから読み込む
ということをしたくなった時のお話です
利用するライブラリ
SwiftyJsonを使ってます。 2016年10月26日の時点では本家でもSwift3対応されているようですが 私がSwift3対応をした9月末時点では対応していなかったため こちらを利用しました。
コード
func loadJson(_ fileName : String) -> JSON? { let path = Bundle.main.path(forResource: fileName, ofType: "json") do{ //https://www.hackingwithswift.com/example-code/strings/how-to-load-a-string-from-a-file-in-your-bundle let jsonStr = try String(contentsOfFile: path!) let json = JSON.parse(jsonStr) return json } catch{ return nil } }
やっていることは、ファイルを文字列として読み込んで
その文字列をjsonにパースしているだけです。