| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > C++ Builder > Создание Excel файла без образения к серверу Excel |
| Автор: BOB4uK 9.8.2009, 17:04 |
| Как то установил пустую Windows и 1C: Предприятие, дак вот сохранил из 1С документ в формат .xls без проблем и на другом ПК открылось тоже без проблем! Вопрос как работать с файлами .xls без установленного на ПК Office? |
| Автор: sawfish 13.8.2009, 18:52 |
| Файлы Microsoft (.doc, .xls и т.д.) и многие другие представляют собой структурированные хранилища (structured storage), они называются "файл-документ" (docfile) или "составной файл" (compound file). Внутри составной файл состоит из следующих элементов: - "хранилища" (storages), а на самом деле это просто внутренние каталоги, описывающие состав и расположение других объектов внутри составного файла; - "потоки" (streams), а на самом деле это своего рода файлы, массивы структурированной информации, имеющие собственное имя; - "заблокированные данные" (lock-bytes), а на самом деле это довольно редко встречающиеся неструктурированные массивы двоичной информации, своего рода "посторонние" данные, которые разрешается иметь внутри составного файла, но которые не могут служить OLE-объектами. Структура - IStorage Функции: Функция IStorage --- Описание ------------------------------------------------------------- CreateStream --- Создать новый поток OpenStream --- Открыть существующий поток CreateStorage --- Создать новое хранилище OpenStorage --- Открыть существующее хранилище EnumElements --- Перенумеровать потоки в хранилище RenameElement --- Переименовать поток DestroyElement --- Уничтожить поток Вот, собственно, в этом направлении и копайте. Удачи! |
| Автор: xvr 14.8.2009, 11:11 |
| А еще на сайте MS где то лежать описания бинарных форматов всех часте Оффиса (тех самых потоков, которые внутри IStorage) |
| Автор: Artemon 14.8.2009, 16:55 |
| Например вот этот компонент: http://www.nika-soft.com/nativeexcel2/ умеет работать с Excel БЕЗ установленного MS Office |