macOS/iOS Preferences PlistをJSONに変換する

macOSまたはiOSのUserDefaults設定plistをJSONに変換します。混合型とネストされた構造を含む一般的な設定パターンを解説します。

iOS Settings

詳細な説明

UserDefaults Preferences Plist

macOSとiOSはUserDefaultsシステムを使用してユーザー設定を保存し、~/Library/Preferences/にplistファイルとして永続化します。これらのファイルはすべてのplist型を含み、デバッグや移行のためにエクスポートされることがよくあります。

Plist構造

<dict>
  <key>ShowSidebar</key>
  <true/>
  <key>FontSize</key>
  <real>14.5</real>
  <key>MaxRecentFiles</key>
  <integer>20</integer>
  <key>WindowFrame</key>
  <string>{{100, 200}, {800, 600}}</string>
  <key>LastOpened</key>
  <date>2025-12-15T09:30:00Z</date>
  <key>Theme</key>
  <string>dark</string>
</dict>

JSON出力

{
  "ShowSidebar": true,
  "FontSize": 14.5,
  "MaxRecentFiles": 20,
  "WindowFrame": "{{100, 200}, {800, 600}}",
  "LastOpened": "2025-12-15T09:30:00Z",
  "Theme": "dark"
}

混合型ディクショナリ

設定plistは、単一の<dict>にすべてのplist型(ブーリアン、実数、整数、文字列、日付、配列)を含めることができる好例です。型バッジ付きツリービューは、各設定の型を確認するのに特に便利です。

WindowFrameパターン

macOSアプリはウィンドウ位置をNSStringFromRect出力として保存します:"{{x, y}, {w, h}}"。これはネストされた構造ではなく文字列値です。コンバーターはこれをJSON文字列として正しく保持します。

macOSでの設定読み取り

任意のアプリの設定を以下でエクスポートできます:defaults export com.example.myapp - | pbcopyして、結果をこのコンバーターに貼り付けます。

ユースケース

アプリ設定のデバッグ、マシン間の設定移行、またはJSONベースのインターフェースを通じてユーザー設定を表示・変更する管理ツールの構築に役立ちます。

試してみる — Plist ↔ JSON Converter

フルツールを開く