Выдержка из текста работы
- ВВЕДЕНИЕ
- 1. ПРОБЛЕМНАЯ ОБЛАСТЬ
- 2. ПОСТАНОВКА ЗАДАЧИ
- 3. АНАЛИЗ ИСХОДНЫХ ДАННЫХ
- 3.1 Общие сведения о форматах файлов .xls и .xlsx
- 3.2 Данные, содержащиеся в исходном файле
- 4. ПРОЕКТИРОВАНИЕ БАЗЫ ДАННЫХ
- 5. АЛГОРИТМ РАБОТЫ ПРИЛОЖЕНИЯ
- 6. РЕАЛИЗАЦИЯ АЛГОРИТМА
- 7. ТЕСТИРОВАНИЕ И ОТЛАДКА
- ЗАКЛЮЧЕНИЕ
- СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ
— Анализ исходных данных
— Проектирование базы данных в соответствии с исходными данными
— Написание алгоритма работы приложения
— Реализация алгоритма
3.1 Общие сведения о форматах файлов .xls и .xlsx
автоматизация занятие сервер база
Несмотря на то, что формат .xls является закрытым, сведения о структуре формата можно найти в открытом доступе. Начиная с версии формата Excel 7.0, данные таблиц и листов хранятся в BIFF8 (Binary Interchange File Format) формате, инкапсулированные в контейнер OLE2. OLE файл состоит из так называемых виртуальных потоков. Виртуальный поток — это данные, которые читаются как линейный поток, хотя их физическое расположение в файле может быть фрагментировано. Это могут быть данные пользователя или структуры, контролирующие работу файла.
OLE файл построен как файловая система. Все пространство файла разбито на сектора. Размер сектора определяется при создании файла и, как правило, равен 512 байтам. Виртуальный поток состоит из последовательности секторов. Сектора нумеруются от -1 (Header) с шагом 1. Почти все переменные ссылаются на номер сектора, а не на смещение.
BIFF структура представляет собой подряд идущие записи. Все записи имеют следующий общий формат: ID (2 байта), Размер данных, sz (2 байта), Данные (sz байт)
Первые 4 байта (ID и размер) — это заголовок записи. Размер записи не включает размер заголовка. Все данные записываются в Intel-нотации.
Есть много стандартных записей Excel. Каждая внутри (секция данных) имеет свой определенный формат. Записи могут группироваться в потоки. Ограничителем групп служат 2 специальные записи: BOF (Begin Of File) и EOF (End Of File).
Формат файла .xlsx основан на Open XML и методе сжатия ZIP, что существенно облегчает работу с форматом. После распаковки архива, наибольший интерес представляет директория /xl/worksheets/, файлы /xl/sharedStrings.xml, /xl/workbook.xml.
В файле /xl/workbook.xml хранится описание листов, в файле xl/sharedStrings.xml содержатся текстовые данные из ячеек исходного документа со всех листов. В директории /xl/worksheets/ содержатся xml файлы, содержащие описание данных листов.
3.2 Данные, содержащиеся в исходном файле
Исходный файл содержит один лист, содержащий расписание института Естественных Наук и Биомедицины. Первая строка таблицы содержит номер курса и все группы с номерами специальностей. Вторая строка содержит номера групп и указание подгруппы.
Столбцы, нахдящиеся непосредственно под номером курса содержат дни недели, число и порядковые номера занятий в расписании. Далее идут столбцы, находящиеся под ячейками, содержащими номера групп и подгрупп, содержащие название проводимого занятия, ФИО преподавателя и, иногда, номер аудитории.
Ячейки таблицы, содержащие наименование занятий, проводимых совместно у нескольких групп, объединяются горизонтально в одну. Ячейки, содержащие события, занимающие длительное время, например сессия или каникулы, объединяются вертикально (см. Рисунок 1).
Рисунок 1 — Пример исходных данных
— Курсы
— Группы (наименования специальностей)
— Номер группы и подгруппы
— Расписание для группы (подгруппы), содержащее поля, в которых записаны занятия, преподаватели, которые их проводят, номера аудиторий, номер занятия
— Спроектировал и написал приложение, позволяющее перенести данные, содержащиеся в .xls и .xlsx файлах расписания института
— Ознакомился со спецификациями на данные форматы файлов
— Овладел навыками разбора информации, содержащейся в файлах форматов .xls и .xlsx
СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ
OpenOffice: портал [Электронный ресурс]. — Режим доступа: http://www.openoffice.org/sc/excelfileformat.pdf.
Хабрахабр: портал [Электронный ресурс] // Разбираем xlsx в PHP без готовых библиотек. — Режим доступа: http://habrahabr.ru/post/140352/.
PHP: портал [Электронный ресурс] — Режим доступа: http://php.net/.
Размещено на