[英]Xamarin: How to delete files using CrossFilePicker Xamarin Forms
我正在使用以下代碼在 Xamarin 表單中使用 CrossFilePicker 選擇文件。 目標是刪除 Xamarin.Android 項目中選定的文件,運行命令后文件仍然完好無損。
FileData filedata = await CrossFilePicker.Current.PickFile();
Android.Net.Uri uri = Android.Net.Uri.Parse(filedata.FilePath);
Java.IO.File file = new Java.IO.File(uri.Path);
File.Delete(file.AbsolutePath);
await DisplayAlert("✅", file.AbsolutePath, "Okay");
使用 DisplayAlert 檢查文件路徑時,我看到了下面的路徑,但文件沒有刪除!!
/storage/emulated/0/documents/SalesRecords.db3
我建議您使用Essentials.FilePicker ,它允許您使用以下代碼選擇文件:
async Task<FileResult> PickAndShow(PickOptions options)
{
try
{
var result = await FilePicker.PickAsync(options);
if (result != null)
{
Text = $"File Name: {result.FileName}";
if (result.FileName.EndsWith("jpg", StringComparison.OrdinalIgnoreCase) ||
result.FileName.EndsWith("png", StringComparison.OrdinalIgnoreCase))
{
var stream = await result.OpenReadAsync();
Image = ImageSource.FromStream(() => stream);
}
}
return result;
}
catch (Exception ex)
{
// The user canceled or something went wrong
}
return null;
}
一旦你得到結果,你可以刪除文件,如:
FileResult file= await PickAndShow(PickOptions.Default);
File.Delete(file.FullPath);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.