I am converting a command-line based tool I built (using Excel sheets via GemBox.Spreadsheet) to Xamarin / UWP and am trying to figure out the best way to save out my XLSX data given the storage protection inherent in a UWP app.
If I just try to use the ExcelFile.Save()
method I get protected storage errors and I haven’t found a way to stream that data through Windows.Storage
successfully.
Has anyone done this, or is there a guide or some samples using GemBox.Spreadsheet to take my formatted workbook and save it out of a UWP app?
Hi Kyle,
I’m not sure in which context you’re saving the file.
Nevertheless, here is a small sample that shows how to save an Excel file with GemBox.Spreadsheet in UWP app using FileSavePicker
:
private async void Button_Click(object sender, RoutedEventArgs e)
{
var workbook = new ExcelFile();
var worksheet = workbook.Worksheets.Add("Sheet1");
var cell = worksheet.Cells["A1"];
cell.Value = "Hello World";
var stream = new MemoryStream();
workbook.Save(stream, SaveOptions.XlsxDefault);
var picker = new FileSavePicker();
picker.FileTypeChoices.Add("Excel file", new string[] { ".xlsx" });
picker.SuggestedStartLocation = PickerLocationId.Desktop;
picker.SuggestedFileName = "Example.xlsx";
var storage = await picker.PickSaveFileAsync();
await FileIO.WriteBytesAsync(storage, stream.ToArray());
}
I hope this helps.
Regards,
Mario