UWP FileSavePicker.PickSaveFileAsync() 抛出未指定的错误

Adr*_*n K 7 c# uwp

我第一次尝试使用 FileSavePicker,但是当我调用时,我不断收到“未指定的错误”,没有异常源 await picker.PickSaveFileAsync();

我注意到异常数据字典包含一个值“RestrictedErrorObject-{1F77CB5A-D22F-071F-2637-E6B7C7573653}”,所以我假设它以某种方式与权限相关。

var picker = new Windows.Storage.Pickers.FileSavePicker();
//picker.SuggestedStartLocation = Windows.Storage.Pickers.PickerLocationId.DocumentsLibrary;
//picker.SuggestedStartLocation = Windows.Storage.Pickers.PickerLocationId.Downloads;                
//picker.DefaultFileExtension = "csv";
//picker.FileTypeChoices.Add("CSV", new List<string>() { "*.csv" });
picker.SuggestedFileName = fileName;

StorageFile newFile = await picker.PickSaveFileAsync();
Run Code Online (Sandbox Code Playgroud)

Adr*_*n K 7

所以它现在可以工作了,我使用了 Microsoft 文章的一些代码(如下所示)。老实说,我很难看出有什么不同。我绝对不需要在清单中做任何事情。我使用了默认扩展名 - 但删除了通配符{ ".csv" },所以可能就是这样。但是如果使用通配符,你会得到“参数不正确”异常,这与我之前得到的异常不同。

此代码有效:

var savePicker = new Windows.Storage.Pickers.FileSavePicker();
savePicker.SuggestedStartLocation = Windows.Storage.Pickers.PickerLocationId.DocumentsLibrary;
savePicker.FileTypeChoices.Add("CSV", new List<string>() { ".csv" });
savePicker.SuggestedFileName = fileName;

StorageFile newFile = await savePicker.PickSaveFileAsync();
Run Code Online (Sandbox Code Playgroud)

  • 我遇到了同样的问题。我认为 `FileTypeChoices.Add` 行就是“修复”它的内容。 (2认同)