iOSアプリ開発!SwiftでJsonを扱う!SwiftyJsonをさわってみた。

アプリ開発においてSwiftでのJsonの扱いを簡単にしてくれる
SwiftJsonの使い方を備忘録的に書いときます。

1,SwiftJson をゲット&セット

こちらのリンクからSwiftJsonをゲットできます。

入手したフォルダ内の

Swiftjson-master/Source/SwiftyJSON.swiftをXcodeでつくったプロジェクトの
AppDelegate.swiftやViewController.swiftと同じ階層にドラッグアンドドロップ
 
スクリーンショット 2016-02-13 13.01.37
(今回は手でやっちゃいます。)
 
※このようにSwiftyJSON.swiftファイルを直接設定した場合はViewController.swiftなどの
ファイル内でSiwftJSONをimportする必要ありません。
 
 

2,SwiftでJSONを扱う

 
JSONを扱いたい任意のファイルないであとは、処理をちょこちょこっと記述するだけです。
今回はViewDidLoad()のなかで記述
 
まずは、多分普通に書くとこんな感じ
 


override func viewDidLoad() {

super.viewDidLoad()

//load data

let urlll = NSURL(string: "path to json file")

let request = NSURLRequest(URL: urlll!)

do {

let resData:NSData = try NSURLConnection.sendSynchronousRequest(request, returningResponse: nil)
//日本語とかが入ってる場合はエンコードしてあげましょう。
let ansData = NSString(data:resData, encoding: NSUTF8StringEncoding) as! String

let ansJson = JSON.parse(ansData)

let postdata = ansJson["Post"]

print(postdate)

} catch{

print("error")

}

 
ほんで、SwiftyJsonによる基本的なJsonの扱いはこちら

//まず初期化
let json = JSON(data: data)
if let dd = json["Items"].string {
    println(dd)
}

//型:辞書
let item = json["item"].stringValue
//型:配列
let item = json["item"].stringValue

//ループ:辞書
let json = JSON(data: data)
for (key: String, subJson: JSON) in Jon {
    println(key)
    println(subJson)
}

//ループ:配列
let json = JSON(data: data)
for (index: String, subJson: JSON) in json["item"] {
    println(index)
    println(subJson)
}

他にもいろいろあるのでgithubのページのドキュメントをながめながら進めていくことにします。


 

初心者の方にオススメの書籍はこちら↓

iOSxSwiftアプリ開発で参考になるサイトなどはこちらでまとめています↓

iOSアプリ開発をはじめよう!参考にしたサイト・書籍まとめ [swift2 & iOS9]