3
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

UWPアプリケーションにおける設定ファイルの読み書き

Posted at

動機

長らくWindowsアプリケーションを書いていなかったため、大昔のiniファイルを書いたりパースさせたりというのばかりに慣れてしまっており、最近のUWP(Universal Windows Platform)における設定ファイルの読み書きをどうすればよいのか分からなかったのでメモしておきます。ちょっと調べれば分かる話ですけど。

さすがにもうiniファイルではない

そりゃそうですね。20数年前の知識で止まりすぎです。UWPではWindows.Storage.ApplicationDataContainerクラスもしくはWindows.Storage.ApplicationDataCompositeValueクラス(構造体のように複数の値で1つの属性を表す場合)で表現すればよいみたいです。

設定種類 クラス名
デバイス特有の設定(ローミングさせないやつ) Windows.Storage.ApplicationData.Current.LocalSettings
デバイス間をまたがって設定するもの Windows.Storage.ApplicationData.Current.RoamingSettings

設定の書き込み

Windows.Storage.ApplicationDataContainerクラスがキーバリューストアになっているため、単純に次のように書けばキーe-mailに対応する設定は"hogehoge@xyz.com"ですよ、という内容の設定ファイルとして残してくれます。設定用ページでセーブボタンを押したときに発動させればいいです。

ApplicationDataContainer localSettings = Windows.Storage.ApplicationData.Current.LocalSettings;
localSettings.Values["e-mail"] = "hogehoge@xyz.com";

#設定の読み込み
理屈は同じで、ApplicationDataContainerクラスを取ってきて、それをキーバリューストアで読み込めば良いだけです。ページロード時に読み込んで更新しておけばOKです。

ApplicationDataContainer localSettings = Windows.Storage.ApplicationData.Current.LocalSettings;
var email = localSettings.Values["e-mail"] as String;

というような感じ。

3
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?