libro
www.tuyano.com
C#ではじめるWindows 8アプリ開発入門

設定情報とデータの保存 (3/5)

作成:2014-03-01 10:52
更新:2014-03-01 10:52

■「AppData」フォルダとLocalFolder

アプリケーション固有のファイルというのは、どこに保管されているのでしょうか。これは、Windows 8を使っていればおそらく知っているでしょう。ホームディレクトリ内にある「AppData」フォルダの中ですね。

この中には「Local」「LocalLow」「Roaming」といったフォルダが用意されており、ローカル情報やローミングされたデータ等を整理し保管しています。アプリケーション固有の情報をファイルとして保管しておくには、これらのフォルダにファイルを作成し読み込むようにしておくことになります。

この「AppData」内のフォルダを利用する場合、「勝手にフォルダを作って保存してはいけない」という点を理解しておきましょう。各フォルダの中に自動的にアプリケーションの領域が作成され、その中に必要なファイルが保存される仕組みになっています。その保管場所はシステムによって決定されるのです。

従って、勝手にファイルのパスなどを指定してファイルを書きだそうとしてはいけません。用意されている専用クラスを使ってフォルダを指定する必要があります。


●「Local」内のフォルダの取得
StorageFolder 変数 = ApplicationData.Current.LocalFolder;

●「Roaming」内のフォルダの取得
StorageFolder 変数 = ApplicationData.Current.RoamingFolder;

●テンポラリフォルダの取得
StorageFolder 変数 = ApplicationData.Current.TemporaryFolder;

AppData」の「Local」内に用意される、各アプリケーション用のフォルダというのは、ApplicationDataの「LocalFolder」というプロパティで取得することができます。通常はこれを利用します。

RoamingFolderは、ローミング(ネットワーク経由で取得されるデータ等)のデータを保存する場合に用いられるものです。またTemporaryFolderは一時ファイル(使い終わったら削除されてもかまわないもの)の利用に使います。とりあえず、この3つを知っていれば十分でしょう。

これらで取得されるのは、Windows.Storageパッケージの「StorageFolder」というフォルダを扱うためのクラスのインスタンスです。このインスタンスから、読み書きするファイルを用意してデータの保存やロードを行うわけです。

※プログラムリストが表示されない場合

AddBlockなどの広告ブロックツールがONになっていると、プログラムリスト等が表示されない場合があります。これらのツールをOFFにしてみてください。

※関連コンテンツ

「C#ではじめるWindows 8アプリ開発入門」に戻る