在文件選擇Windows 8的樣本保存文件是這樣的:我需要調用CachedFileManager.DeferUpdates在Windows 8應用
CachedFileManager.DeferUpdates(file);
await FileIO.WriteTextAsync(file, stringContent);
FileUpdateStatus status = await CachedFileManager.CompleteUpdatesAsync(file);
我連載的對象作爲XML這樣做略有不同:
// CachedFileManager.DeferUpdates(file);
var ras = await file.OpenAsync(FileAccessMode.ReadWrite);
var outStream = ras.GetOutputStreamAt(0);
var serializer = new XMLSerializer();
serializer.Write(myObject, outStream);
// FileUpdateStatus status = await CachedFileManager.CompleteUpdatesAsync(file);
它可以使用或不使用CachedFileManager(註釋如上)。
所以,我應該包括CachedFileManager,如果我確實需要使用,我是保存在正確的道路文件。
此代碼,並將文件保存很好,但我不喜歡,包括代碼,我不明白。
如果有一個使用(VAR outStream = ...)的一部分,或者不需要流被關閉? –
是的,在那裏有使用聲明。這是使用流並正確釋放它的正確模式。 安德烈的評論,你真的想,只要你從文件選擇器獲得StorageFile使用CachedFileManager調用,因爲它可能來自在線資源。如果你知道你如你的應用程序數據文件夾的東西寫入本地文件系統,上一個文件時,它是沒有必要的。 –