Blog スタッフブログ

iOS Swift システム開発 ひとくちコードスニペット

[Swift]plistの設定ファイルを読み込むコードスニペット

Swift

こんにちは、株式会社MIXシステム開発担当のBloomです。

今回はSwiftでplistファイルを読み込みたい時に利用するコードスニペットを掲載させていただきます。

それではさっそく関数を実装しましょう。

func loadPlist(_ name: String,
               in bundle: Bundle = .main) throws -> Any {
    guard let url = bundle.url(forResource: name, withExtension: "plist") else {
        throw NSError(domain: "not found", code: -1)
    }
    let data = try Data(contentsOf: url)
    let options = PropertyListSerialization.ReadOptions()
    let obj = try PropertyListSerialization.propertyList(from: data,
                                                         options: options,
                                                         format: nil)
    return obj
}

呼び出し例

        do {
            if let dict = try loadPlist("sample") as? [String: Any] { // Arrayの可能性もあるので注意
                print(dict)
            }
        } catch {
            print("plist 読み込み失敗: \(error)")
        }

これだけでplistファイルを読み込むことができました。フォーマットが決まりきっているならばCodableを利用して読み込むのも良いでしょう。良かったですね。