Посл.ответ |
Сообщение |
Ранг: 24.4 (новичок) Активность: 0.02↘0 Статус: Участник
|
Создано: 06 ноября 2006 07:05 · Личное сообщение · #1
Доброе время суток !
Возможно ли средствами С или С++
создать и редактировать XLS файл ?
если да , то каким образом ?
Заранее благодарен за ответы !
| Сообщение посчитали полезным: |
|
Ранг: 123.7 (ветеран) Активность: 0.1↘0 Статус: Участник 1nn0$/100
|
Создано: 06 ноября 2006 07:22 · Личное сообщение · #2
Возможно.
Метод 1(долгий): Вкуривай формат файла (в hex editor'е), пиши парсер. Гемороя будет очень много...
Метод 2(не тру): Погугли по этому вопросу.
----- Blame the victim! | Сообщение посчитали полезным: |
Ранг: 109.2 (ветеран) Активность: 0.09↘0 Статус: Участник Cardinal
|
Создано: 06 ноября 2006 07:31 · Личное сообщение · #3
ZeroCold пишет:
Возможно ли средствами С или С++
создать и редактировать XLS файл ?
Разбирайся с функциями для работы с COM-объектами.
----- – Почему ты работаешь по ночам ? – Так удобнее... В одну смену с чертями... | Сообщение посчитали полезным: |
Ранг: 387.4 (мудрец) Активность: 0.17↘0 Статус: Участник системщик
|
Создано: 06 ноября 2006 09:41 · Личное сообщение · #4
В OpenOffice.org есть код который разбирает XLS файл. Но, вопрос в том, что тебе надо сделать. Если поправить заголовок или какой-нить copyright, то это просто. Ну а если написать Viewer - то абзац - потащишь за собой все потроха openoffice-a....
| Сообщение посчитали полезным: |
Ранг: 24.4 (новичок) Активность: 0.02↘0 Статус: Участник
|
Создано: 06 ноября 2006 11:09 · Личное сообщение · #5
s0larian
мне надо чтобы было можно заново создать и потом редактировать
этот созданный мной файл
| Сообщение посчитали полезным: |
Ранг: 352.4 (мудрец), 4thx Активность: 0.15↘0 Статус: Участник retired
|
Создано: 06 ноября 2006 11:18 · Личное сообщение · #6
s0larian
пожалуй это слишком - таскать за собой половину openoffice
ZeroCold
посмотри wasm.ru. там были примеры + недавно на форуме была тема про что-то похожее, но для word. с excel дела обстоят примерно так же
| Сообщение посчитали полезным: |
Ранг: 387.4 (мудрец) Активность: 0.17↘0 Статус: Участник системщик
|
Создано: 06 ноября 2006 11:31 · Личное сообщение · #7
ZeroCold
так а что именно тебе надо изменять? Я просто клоню к тому, что в простыз случаях ты обойдёшься шаблоном (xls созданный руками в excel) и мелкими модификациями прямо в файле. Но если тебе надо что-то слодное, то, imho, используй VBA - так ты сможешь упавлять самим excel-ом - типа, добавим сюда rows, поменяем цвет, зафигачим формулу.... AFAIK там есть интерфейс почти ко всему.
| Сообщение посчитали полезным: |
Ранг: 24.4 (новичок) Активность: 0.02↘0 Статус: Участник
|
Создано: 06 ноября 2006 14:11 · Личное сообщение · #8
s0larian
Мне надо генерировать новые файлы XLS, содержимое которых текст на разных языках , с возможностью
их редактирования в самом EXCEl и потом снова чтобы тулзой забирать из файла уже отредактированные данные.
| Сообщение посчитали полезным: |
Ранг: 387.4 (мудрец) Активность: 0.17↘0 Статус: Участник системщик
|
Создано: 06 ноября 2006 14:47 · Поправил: s0larian · Личное сообщение · #9
s0larian
ох тяжко тебе будет... Вся твоя идея с excel, конечно, не фонтан.
Как вариант, может сделаешь export в CSV и его прочитаешь? На порядок проще вторая задача.
| Сообщение посчитали полезным: |
Ранг: 24.4 (новичок) Активность: 0.02↘0 Статус: Участник
|
Создано: 06 ноября 2006 23:56 · Личное сообщение · #10
Я уже нашел , в Visual Studio 2003 .Net там есть класс для работы с EXCEL.
Вот попробую DLLку написать на нем , инересно будет ли она потом работать у меня c Visual Studio 6?
| Сообщение посчитали полезным: |
Ранг: 1.0 (гость) Активность: 0=0 Статус: Участник
|
Создано: 07 ноября 2006 00:15 · Личное сообщение · #11
MSDN рулез http://windowssdk.msdn.microsoft.com/en-us/library/ms724626.aspx
| Сообщение посчитали полезным: |
Ранг: 124.7 (ветеран) Активность: 0.07↘0 Статус: Участник
|
Создано: 07 ноября 2006 01:37 · Личное сообщение · #12
ZeroCold
тебе s0larian дело говорит - CSV и не парь мозги
| Сообщение посчитали полезным: |
Ранг: 19.0 (новичок) Активность: 0.01↘0 Статус: Участник
|
Создано: 07 ноября 2006 01:40 · Личное сообщение · #13
ZeroCold
читать
Кэш для Excel
www.rsdn.ru/article/com/excelcache.xml
| Сообщение посчитали полезным: |
Ранг: 387.4 (мудрец) Активность: 0.17↘0 Статус: Участник системщик
|
Создано: 07 ноября 2006 10:09 · Личное сообщение · #14
ZeroCold пишет:
Я уже нашел , в Visual Studio 2003 .Net там есть класс для работы с EXCEL.
Вот попробую DLLку написать на нем , инересно будет ли она потом работать у меня c Visual Studio 6?
эээ.... тут ты попадаешь если run-time линкуется динамически. То есть, в разных версиях VC++ разные библиотеки, и след. разные версии malloc().
| Сообщение посчитали полезным: |
Ранг: 160.1 (ветеран) Активность: 0.07↘0 Статус: Участник
|
Создано: 07 ноября 2006 10:54 · Поправил: infern0 · Личное сообщение · #15
ZeroCold пишет:
Возможно ли средствами С или С++
создать и редактировать XLS файл ?
точно можно из перла - там есть модуль
| Сообщение посчитали полезным: |
Ранг: 122.3 (ветеран) Активность: 0.05↘0 Статус: Участник
|
Создано: 07 ноября 2006 11:07 · Личное сообщение · #16
COM, вернее OLE - его более высокоуровневая надстройка. которая для таких целей и была задумана.
десяток строк кода будет.
и не ипи моск.
| Сообщение посчитали полезным: |
Ранг: 24.2 (новичок) Активность: 0.01↘0 Статус: Участник
|
Создано: 07 ноября 2006 12:42 · Личное сообщение · #17
тухлыми помидорами не кидать)
но помоему для каких то старых версий оффиса и соответсвенно экселя (95-97) формат таблиц простой до безобразия (к сожалению щас инфу найти не могу) а ексель последних версий эти файлы прекрасно открывает.... ну эт конечно на крайний случай..
| Сообщение посчитали полезным: |
Ранг: 310.8 (мудрец), 29thx Активность: 0.43↘0 Статус: Участник
|
Создано: 08 ноября 2006 02:28 · Личное сообщение · #18
mrJ пишет:
формат таблиц простой до безобразия
Формат простой и сейчас. Только в конце файла есть описание/индекс этих таблиц, без которого они превращаются в простой текст. Проверено при попытке вытаскивания таблиц с испорченного диска.
Для Экселя есть куча готовых наработок - в свое время искал и проверял на Дельфи. В конце концов оказалось проще написать все в VBA. А еще можно и в VB - но это сложнее. Кстати полная-то задача какая. Может проще встроить механизм извлечения данных в Эксель, чем махину городить. У меня например Экселевский документ читает с прибора данные по COM-порту и никаких проблем с Дельфи и С++ - все делает VBA + функции API.
| Сообщение посчитали полезным: |
Ранг: 30.6 (посетитель) Активность: 0.01↘0 Статус: Участник
|
Создано: 08 ноября 2006 06:38 · Личное сообщение · #19
Можно посмотреть на codeproject'е. Например, www.codeproject.com/wtl/WTLExcel.asp
| Сообщение посчитали полезным: |