C# UWP FileSavePicker合同文件处理
在我的应用程序中,我使用的是FileSavePicker合同(提供者)。所以其他应用程序可以将文件保存到我的应用程序中。我实现了它,如MSDN所示。现在的问题是,我必须处理一个“保存”的文件,但我如何知道保存何时完成?这是我的经纪人C# UWP FileSavePicker合同文件处理,c#,uwp,win-universal-app,filesavepicker,C#,Uwp,Win Universal App,Filesavepicker,在我的应用程序中,我使用的是FileSavePicker合同(提供者)。所以其他应用程序可以将文件保存到我的应用程序中。我实现了它,如MSDN所示。现在的问题是,我必须处理一个“保存”的文件,但我如何知道保存何时完成?这是我的经纪人 private async void FileSavePickerUI_TargetFileRequested(FileSavePickerUI sender, TargetFileRequestedEventArgs args) { var def
private async void FileSavePickerUI_TargetFileRequested(FileSavePickerUI sender, TargetFileRequestedEventArgs args)
{
var deferral = args.Request.GetDeferral();
string saveFileName = sender.FileName;
StorageFolder fileSavePickerContractTempFolder = await ApplicationData.Current.LocalCacheFolder.CreateFolderAsync("FileSavePickerContract", CreationCollisionOption.OpenIfExists);
StorageFile fileSavePickerContractTempFile = await fileSavePickerContractTempFolder.CreateFileAsync(saveFileName, CreationCollisionOption.ReplaceExisting);
args.Request.TargetFile = fileSavePickerContractTempFile;
deferral.Complete();
}
我的应用程序的目标是周年更新(1607)。在deleral.Complete()之后,我需要更多地处理该文件,以便集成到我的应用程序中。有人能告诉我正确的方向吗?您的文件保存在
wait-CreateFileAsync
行之后。方法CreateFileAsync
本身返回IAsyncOperation
,如果您wait
它,当此操作完成时,wait
后的下一行将被执行。使用CacheFileUpdater,我可以在文件完全写入后立即对其作出反应
CachedFileUpdater.SetUpdateInformation(fileSavePickerContractTempFile, url, ReadActivationMode.NotNeeded, WriteActivationMode.AfterWrite, CachedFileOptions.None);
在App.xaml.cs上,我现在覆盖了“onCachedFileUpdateActivated”事件,在该事件中,我可以使用完全写入的文件执行一些操作。因此,正如预期的那样,这项工作现在起作用了
但是!这在Windows 10 Mobile上不起作用,App.xaml.cs上的OnCachedFileUpdateActivatedEventHandler没有被触发,这是为什么?使用
等待fileSavePickerContractTempFolder.CreateFileAsync().ContinueWith((s,a)=>{})
IAsyncOperation不包含“ContinueWith”的定义试试看是否有效StorageFile filesavepickercontacttempfile=wait filesavepickercontacttempfolder.CreateFileAsync(saveFileName,CreationCollisionOption.ReplaceExisting).AsTask().ContinueWith((file)=>{return file.Result;})代码>也不起作用。在“”上,我调用了一个方法并将StorageFile传入,但StorageFile此时甚至有0字节。对此问题没有更多想法吗?是的,但如果我要处理一个文件,例如从dropbox应用程序保存的文件,然后此文件仍在下载,文件大小为0。选择要保存的文件未完成。我如何知道文件何时完成?没有人能帮我解决此问题吗?我也有同样的问题。我不知道如何修复它。DropBox应用程序在某种程度上起作用,但我的不起作用。DropBox也做了同样的事情(不久前):