使用FileSavePicker保存文件而不提示

时间:2014-03-04 16:17:19

标签: c# xaml visual-studio-2012 windows-store-apps

我正在使用C#开发一个Windows 8应用程序,我必须在完成录制后自动保存音频。我使用FileSavePicker,每次打开文件保存窗口。但是,我希望它在没有提示的情况下发生。我已经在FileSavePicker对象中输入了文件名和编码。唯一剩下的就是悄悄地保存它。请帮助。

感谢。

2 个答案:

答案 0 :(得分:2)

我使用CreateFileAsync

找到了答案

保存的常用语法(在FileSavePicker下)是:

var mediaFile = await _fileSavePicker.PickSaveFileAsync();

如果我将其替换为:

StorageFile mediaFile = await Windows.Storage.KnownFolders.MusicLibrary.CreateFileAsync("file1.mp3",Windows.Storage.CreationCollisionOption.ReplaceExisting);

问题解决了!我还必须在应用程序功能中添加音乐库。

答案 1 :(得分:1)

你不能这样做。如果要写入之前已选择的文件,可以使用FutureAccessList。如果要写入ApplicationDataContainer文件夹中的文件,则不应使用FileSavePicker。如果您请求访问KnownFolder,则也不需要使用选择器。

尽可能简单地使用KnownFolders。考虑想要访问Music Library例如(假设您具有音乐库功能),然后在所述库中创建文件。

StorageFolder storageFolder = KnownFolders.MusicLibrary;
StorageFile file = await storageFolder.CreateFileAsync(myFilename, CreationCollisionOption.ReplaceExisting);

这就是全部。您可以查找一些指南或问题,以便正确使用file进行阅读/写作。