我的UWP应用是转换后的文件。我让用户使用FileOpenPicker.PickSingleFileAsync()
选择一个输入文件,并使用FileSavePicker.PickSaveFileAsync()
选择一个输出文件。
从自定义事件中,我看到许多用户拥有的文件的内部格式已经正确,但文件扩展名错误,因此只需更改名称即可。
我可以通过StorageFile
API来做到这一点吗?
注意:我知道我可以将内容复制到输出文件中,而我已经这样做了。我只是想知道它是否可以更有效地完成。
答案 0 :(得分:1)
答案是肯定的。按照注释中的建议使用StorageFile.RenameAsync()
进行测试后,将执行以下操作:
string nextName = file.DisplayName + ".ext";
await file.RenameAsync(nextName, NameCollisionOption.GenerateUniqueName)
我主要担心,因为通过FileOpenPicker
提取的文件有很多限制,例如您无法获取文件的父文件夹,但是重命名时不会发生冲突。但是,我没有测试NameCollisionOption.ReplaceExisting
是否覆盖未选择的现有文件。