public Excel(Stream stream, ExcelMode mode) { IsEditable = mode != ExcelMode.OpenReadOnly; _stream = stream; _streamOwner = false; OpenXmlDocument = LoadDocument(mode); }
public Excel(string fileName, ExcelMode mode) { var fileMode = mode == ExcelMode.OpenReadOnly ? FileMode.Open : FileMode.OpenOrCreate; var fileAccess = mode == ExcelMode.OpenReadOnly ? FileAccess.Read : FileAccess.ReadWrite; _stream = new FileStream(fileName, fileMode, fileAccess); _streamOwner = true; IsEditable = mode != ExcelMode.OpenReadOnly; OpenXmlDocument = LoadDocument(mode); }
private SpreadsheetDocument LoadDocument(ExcelMode mode) { var doc = mode == ExcelMode.Create ? SpreadsheetDocument.Create(_stream, SpreadsheetDocumentType.Workbook, true) : SpreadsheetDocument.Open(_stream, IsEditable); if (mode == ExcelMode.Create) { SpreadsheetHelper.GetWorkbook(doc, createIfDoesntExists: true); } return(doc); }