Exemplo n.º 1
0
        public Excel(Stream stream, ExcelMode mode)
        {
            IsEditable = mode != ExcelMode.OpenReadOnly;

            _stream      = stream;
            _streamOwner = false;

            OpenXmlDocument = LoadDocument(mode);
        }
Exemplo n.º 2
0
        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);
        }
Exemplo n.º 3
0
        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);
        }