iOS

[Swift]ObjectMapperで簡単にJSONを読み込む

投稿日:

はじめに

こんにちは、onukiです。

私はSwiftでJSONを取り扱う際に、
ObjectMapperを使用してるのですが、今回は簡単にObjectMapperの紹介と普通にやると意外と面倒なJSONにネスト配列がある場合の使い方を書いていこうと思います。

準備

今回もおなじみCarthageを使用します。
Cartfileにこちらを記述してください。

そうしたら、以下のコマンドでビルドしてください。

 

実装

基本的な使い方

まず、以下のようなJSONを扱う場合、

ObjectMapperはMappableプロトコルをモデルクラスに実装し使用します、今回のJSONだと以下のように記述します。

実際にJSONを読み込みモデルを扱うには以下のようにします

JSONの中にnameがなかった場合はuser.nameの値はnilになります。たとえばvar name: String = “”とかやっておけばnilではなく空文字になりますし、var name: String = “Default”など特定の値をデフォルト値にすることもできます。

ネスト配列に対応してみよう

ここからネスト配列が含まれているJSONを使用します。

Mappableプロトコルを今回はネスト配列に対応するために2つ作成します。

JSONからモデルに変換しuserのphotos配列から0番目のデータを取得したい際にはこのように取得します。

 

さいごに

ObjectMapperいかがだったでしょうか、モデルクラスの書き方もわかりやすく個人的には気に入っているので引き続き使っていきたいと思っています。

page_footer_300rect




page_footer_300rect




-iOS
-

執筆者:


comment

メールアドレスが公開されることはありません。

CAPTCHA


関連記事

swift

Swiftでのパーミッション取得を簡単に

1 はじめに2 準備3 実装3.1 とりあえず表示3.2 カスタマイズ4 さいごに はじめに こんにちは、nukkyです。 今回は、アプリにはつきもののユーザへのパーミッションの確認を 簡単に行えるラ ...

swift

[Swift]ログフレームワーク「CocoaLumberjack」をSwiftで使ってみた

1 はじめに2 準備3 実装3.1 出力先の設定3.2 ログの出力レベルを設定する3.3 ログの出力4 さいごに はじめに こんにちは、nukkyです。 今回はログ管理に便利なライブラリ「CocoaL ...

【Swift】XCUITestでScrollViewのテストをしてみる

1 はじめに2 XCUITestとは3 導入方法3.1 オブジェクトの配置3.2 UISCrollView3.3 ラベルとボタン4 テストのための設定4.1 ラベル5 テストコード5.1 SetUp5 ...

swift

Swiftの配列、辞書関連メソッドの基本

1 はじめに2 配列(Array)2.1 filter2.2 map2.3 reduce3 辞書(Dictionary)3.1 filter3.2 map3.3 reduce4 さいごに はじめに 普 ...

【Swift】iOS13.1、Xcode11でSceneDelegate周りを触ってみた。

1 はじめに2 SceneDelegateについて3 SceneDelegateの呼ばれる順番3.1 アプリ起動時3.2 アプリバックグラウンド3.3 アプリフォアグラウンド3.4 アプリフォアグラウ ...

フォロー

follow us in feedly

page_side_300rect

2018年2月
« 1月 3月 »
 123
45678910
11121314151617
18192021222324
25262728 

アプリ情報

私たちは無料アプリもリリースしています、ぜひご覧ください。 下記のアイコンから無料でダウンロードできます。