public async Task <string> SaveAsync(byte[] fileData, DataFileDialogModel dataFileDialog) { try { await Task.Run(() => { string filePath = Path.Combine(Android.OS.Environment.ExternalStorageDirectory.AbsolutePath, DefaultDir); Java.IO.File myDir = new Java.IO.File(filePath); if (!myDir.Exists()) { myDir.Mkdir(); } string fullName = Path.Combine(filePath, dataFileDialog.DefaultFileName + dataFileDialog.FileType); if (System.IO.File.Exists(fullName)) { System.IO.File.Delete(fullName); } System.IO.File.WriteAllBytes(fullName, fileData); }); return($"Файл сохранен в папку {DefaultDir}"); } catch (Exception) { return("Ошибка сохранения файла"); } }
public async Task <string> SaveAsync(byte[] fileData, DataFileDialogModel dataFileDialog) { var savePicker = new Windows.Storage.Pickers.FileSavePicker(); savePicker.SuggestedStartLocation = Windows.Storage.Pickers.PickerLocationId.DocumentsLibrary; savePicker.FileTypeChoices.Add(dataFileDialog.TypeName, new List <string>() { dataFileDialog.FileType }); savePicker.SuggestedFileName = dataFileDialog.DefaultFileName; Windows.Storage.StorageFile file = await savePicker.PickSaveFileAsync(); if (file != null) { Windows.Storage.CachedFileManager.DeferUpdates(file); await FileIO.WriteBytesAsync(file, fileData); FileUpdateStatus status = await CachedFileManager.CompleteUpdatesAsync(file); if (status == FileUpdateStatus.Complete) { return($"Файл {file.Name} сохранен"); } else { return($"Ошибка сохранения Файла {file.Name}"); } } else { return($"Сохранение файла отменено"); } }