加入收藏 | 设为首页 | 会员中心 | 我要投稿 东莞站长网 (https://www.0769zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 服务器 > 系统 > 正文

.net – 如何在FileSavePicker中接受任何文件类型?

发布时间:2021-01-28 22:43:10 所属栏目:系统 来源:网络整理
导读:我有一个应用程序,用户可以在其中下载文件.我正在尝试使用FileSavePicker让他选择位置和文件名.该文件可以是任何类型,因此我希望FileSavePicker接受任何文件类型,但显然我不允许这样做: picker.FileTypeChoices.Add("All files",new[] { "*" });// Error: "

我有一个应用程序,用户可以在其中下载文件.我正在尝试使用FileSavePicker让他选择位置和文件名.该文件可以是任何类型,因此我希望FileSavePicker接受任何文件类型,但显然我不允许这样做:

picker.FileTypeChoices.Add("All files",new[] { "*" });
// Error: "Ce sélecteur de fichiers n’autorise pas toutes les extensions de fichier."
// (which translates roughly to "This file picker doesn't allow all file extensions")

或这个:

picker.FileTypeChoices.Add("All files",new string[0]);
// "Error HRESULT E_FAIL has been returned from a call to a COM component."

试图将FileTypeChoices留空也会失败.

我在我的应用清单中添加了一个文件保存选择器声明,并检查了“支持任何文件类型”选项.编辑:我刚刚意识到这与我的问题完全无关……

是否可以允许任何文件类型?我已经能够在FileOpenPicker中使用picker.FileTypeFilter.Add(“*”),但我找不到使用FileSavePicker做同样的方法…

注意:在我的情况下,我已经知道文件的原始名称,所以我可以使用它在FileTypeChoices中创建一个特定条目,但如果文件没有扩展名,我就卡住了……

解决方法

我有点惊讶文档根本没有涵盖这一点,但是当你尝试使用所有文件过滤器时得到的错误信息非常清楚:

“此文件选择器不允许所有文件扩展名.”

换句话说,不,你不能这样做.

正如您所提到的,您说您已经知道在大多数情况下您尝试保存的文件的名称,您可以将文件类型选择设置为您要保存的文件的类型.当然,正如您所指出的那样,文件没有扩展名的情况,但实际上也有一个有效的“扩展名”:

picker.FileTypeChoices.Add("Unknown",new List<string>() { "." });

希望这可以帮助.

(编辑:东莞站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读