差分

ナビゲーションに移動 検索に移動

Xamarin.Macでplistファイルを読み書きする

2,134 バイト追加, 2015年10月15日 (木) 08:17
ページの作成:「==概要== Mac OS Xではプロパティリスト(plistファイル)と呼ばれるデータを読み書きする際の標準形式が存在する。 この...」
==概要==
[[Mac OS X]]ではプロパティリスト(plistファイル)と呼ばれる[[データ]]を読み書きする際の標準形式が存在する。
このプロパティリストは[[Mac OS X]]での[[プログラミング]]では避けては通ることができないと思われる。

プロパティリストの[[拡張子]]はplist一種類だが中身の形式は大きく分けて以下の3種類がある。
*NeXTSTEP
*Binary
*XML

このプロパティリストを扱う方法は複数が存在するようだが、それぞれ対応する「読める」および「書ける」形式が若干異なるようだ。

==方法:NSDictionaryで読み書きする==
NSDictionary.FromFileメソッドで読み込み、NSDictionary.WriteToFileメソッドで書き込むだけである。読み込みはバイナリ形式もXML形式も自動で判別し適切に処理してくれる。書き込みは問答無用でXML形式となる。
<source lang="csharp">
using System;
using System.IO;
using MonoMac.Foundation;
using MonoMac.AppKit;

namespace DockAccess
{
class MainClass
{
static void Main(string[] args)
{
NSApplication.Init();

// Dock情報が格納されているplistファイルのパス
var file = Path.Combine(
Environment.GetFolderPath(Environment.SpecialFolder.UserProfile),
"Library/Preferences/com.apple.dock.plist");
Console.WriteLine(file);

// 読み込む
var dic = NSDictionary.FromFile(file);
Console.WriteLine(dic);

// 書き込む
dic.WriteToFile(file + ".tmp");
}
}
}
</source>

==関連項目==
*[[MonoMac/特殊ディレクトリのパスを取得する]]
*[[Xamarin.Mac/NSApplicationのサブクラスを使う]]
*[[Xamarin.Mac/Dockアイコンを非表示にする]]
*[[Xamarin.Mac/OSのバージョンを取得する]]
*[[Xamarin.Mac/アクセシビリティの許可の有無を取得する]]

==参考文献==
{{reflist}}

{{stub}}

[[category:Xamarin.Mac]]
[[category:MonoMac]]
匿名利用者

案内メニュー