Beispiel #1
0
        public static Workbook Decode(Stream stream)
        {
            Workbook       book = new Workbook();
            SharedResource sharedResource;
            List <Record>  records = ReadRecords(stream, out book.DrawingGroup);

            book.Records = records;
            List <BOUNDSHEET> boundSheets = DecodeRecords(records, out sharedResource);

            foreach (BOUNDSHEET boundSheet in boundSheets)
            {
                stream.Position = boundSheet.StreamPosition;
                Worksheet sheet = WorksheetDecoder.Decode(book, stream, sharedResource);
                sheet.Book      = book;
                sheet.Name      = boundSheet.SheetName;
                sheet.SheetType = (SheetType)boundSheet.SheetType;
                book.Worksheets.Add(sheet);
            }
            return(book);
        }
        public static Workbook Decode(Stream stream)
        {
            Workbook      workbook = new Workbook();
            List <Record> records  = WorkbookDecoder.ReadRecords(stream, out workbook.DrawingGroup);

            workbook.Records = records;
            SharedResource    sharedResource;
            List <BOUNDSHEET> list = WorkbookDecoder.DecodeRecords(records, out sharedResource);

            foreach (BOUNDSHEET current in list)
            {
                stream.Position = (long)((ulong)current.StreamPosition);
                Worksheet worksheet = WorksheetDecoder.Decode(workbook, stream, sharedResource);
                worksheet.Book      = workbook;
                worksheet.Name      = current.SheetName;
                worksheet.SheetType = (SheetType)current.SheetType;
                workbook.Worksheets.Add(worksheet);
            }
            return(workbook);
        }