アプリケーションの分離ストレージに格納されるパラメータを読み書きする方法を理解しようとしています。
現在、Windows Phone アプリを構築していますが、win8 アプリが必要なので、ポータブル クラス ライブラリ プロジェクトで実行できると考え、この素晴らしいPCLStorageを見つけました。
私のキャッシュクラスは、パラメータを格納するために次のようになります。
public async static Task<string> GetParam(string name)
{
IFolder rootfolder = FileSystem.Current.LocalStorage;
IFolder folder = await rootfolder.GetFolderAsync("isostore");
IFile file = await folder.GetFileAsync(name);
return await file.ReadAllTextAsync();
}
public async static void SaveParam(string name, string param)
{
IFolder rootfolder = FileSystem.Current.LocalStorage;
IFolder folder = await rootfolder.CreateFolderAsync("isostore", CreationCollisionOption.OpenIfExists);
IFile file = await folder.CreateFileAsync(name, CreationCollisionOption.ReplaceExisting);
await file.WriteAllTextAsync(param);
}
書き込み部分は問題ありません。存在する場合はオーバーライドします。問題はその読み取り部分です。IFile と IFolder には.Exists
関数 (???) がありません。保存する前に Get を呼び出すと、何が返されますか?