我可以更改StorageFile的扩展名吗?

时间:2018-07-04 14:30:28

标签: c# uwp

我的UWP应用是转换后的文件。我让用户使用FileOpenPicker.PickSingleFileAsync()选择一个输入文件,并使用FileSavePicker.PickSaveFileAsync()选择一个输出文件。

从自定义事件中,我看到许多用户拥有的文件的内部格式已经正确,但文件扩展名错误,因此只需更改名称即可。

我可以通过StorageFile API来做到这一点吗?

注意:我知道我可以将内容复制到输出文件中,而我已经这样做了。我只是想知道它是否可以更有效地完成。

1 个答案:

答案 0 :(得分:1)

答案是肯定的。按照注释中的建议使用StorageFile.RenameAsync()进行测试后,将执行以下操作:

string nextName = file.DisplayName + ".ext";
await file.RenameAsync(nextName, NameCollisionOption.GenerateUniqueName)

我主要担心,因为通过FileOpenPicker提取的文件有很多限制,例如您无法获取文件的父文件夹,但是重命名时不会发生冲突。但是,我没有测试NameCollisionOption.ReplaceExisting是否覆盖未选择的现有文件。