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()のなかで記述
 
まずは、多分普通に書くとこんな感じ
 

</p>
<p>override func viewDidLoad() {</p>
<p>super.viewDidLoad()</p>
<p>//load data</p>
<p>let urlll = NSURL(string: &quot;path to json file&quot;)</p>
<p>let request = NSURLRequest(URL: urlll!)</p>
<p>do {</p>
<p>let resData:NSData = try NSURLConnection.sendSynchronousRequest(request, returningResponse: nil)<br />
//日本語とかが入ってる場合はエンコードしてあげましょう。<br />
let ansData = NSString(data:resData, encoding: NSUTF8StringEncoding) as! String</p>
<p>let ansJson = JSON.parse(ansData)</p>
<p>let postdata = ansJson[&quot;Post&quot;]</p>
<p>print(postdate)</p>
<p>} catch{</p>
<p>print(&quot;error&quot;)</p>
<p>}<br />

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

<br />
//まず初期化<br />
let json = JSON(data: data)<br />
if let dd = json[&quot;Items&quot;].string {<br />
    println(dd)<br />
}</p>
<p>//型:辞書<br />
let item = json[&quot;item&quot;].stringValue<br />
//型:配列<br />
let item = json[&quot;item&quot;].stringValue</p>
<p>//ループ:辞書<br />
let json = JSON(data: data)<br />
for (key: String, subJson: JSON) in Jon {<br />
    println(key)<br />
    println(subJson)<br />
}</p>
<p>//ループ:配列<br />
let json = JSON(data: data)<br />
for (index: String, subJson: JSON) in json[&quot;item&quot;] {<br />
    println(index)<br />
    println(subJson)<br />
}<br />

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


 

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

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