使用Windows Store app / RT中的FileSavePicker清除文件内容

时间:2014-10-01 10:19:29

标签: c# .net io windows-store-apps windows-rt

如何在填写新内容/覆盖旧文件之前清除文件内容?如果新内容比旧内容短,旧内容的剩余部分会破坏我的数据合同结构。

FileSavePicker savePicker = new FileSavePicker();
StorageFile saveFile = await savePicker.PickSaveFileAsync();

using (var sessionRandomAccess = await saveFile.OpenAsync(FileAccessMode.ReadWrite))
{
    using (var sessionOutputStream = sessionRandomAccess.GetOutputStreamAt(0))
    {
        var ser = new DataContractSerializer(typeof(ConfigurationModel));
        ser.WriteObject(sessionOutputStream.AsStreamForWrite(), model);
    }
}

1 个答案:

答案 0 :(得分:0)

一如既往,在发布任务之后,我自己想出来,看起来我没有花时间研究。

在编写新内容之前清除文件:

await FileIO.WriteTextAsync(saveFile, string.Empty);