Модераторы: Daevaorn
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Две части программы на разных компиляторах 
:(
    Опции темы
eg13
Дата 6.8.2013, 18:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 7
Регистрация: 4.8.2013

Репутация: нет
Всего: нет



Не знаю, в ту ли тему я пишу свой вопрос smile
А состоит он вот в чем. Написал я довольно большое приложение на WinApi. Писал в Visual C++ 11. Но тут вдруг возникла надобность прикрутить к моей программе импорт/экспорт в .xls/.xlsx файл.
А мне не очень-то хочется возиться с OLE, и к тому же есть вариант, что на компьютере, на который ставится моя программа нету MS Excel, да и вообще офиса нет.
И тут я нашел библиотеку для Борланда, которая могла бы запросто решить мою проблему. Но переписывать приложение под борланд тоже не вариант.
Есть ли такая возможность часть кода скомпилить на Борланде, а потом прикрутить к проекту в Вижуал Студио? Кто что по этому поводу скажет?
PM MAIL   Вверх
bsa
Дата 6.8.2013, 19:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 9185
Регистрация: 6.4.2006
Где: Москва, Россия

Репутация: 63
Всего: 196



Если сделаешь в виде библиотеки с Сишными функциями, то проблем не будет. Главное, выделяй память и освобождай только в одной среде.
PM   Вверх
xvr
Дата 7.8.2013, 13:08 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 7046
Регистрация: 28.8.2007
Где: Дублин, Ирландия

Репутация: 60
Всего: 223



Цитата(eg13 @  6.8.2013,  18:59 Найти цитируемый пост)
А мне не очень-то хочется возиться с OLE,

Цитата(eg13 @  6.8.2013,  18:59 Найти цитируемый пост)
И тут я нашел библиотеку для Борланда,

А вы уверены, что эта 'библиотека для Борланда' не делает то, что вам надо, через тот же самый OLE? В 'мире Борланда' это самый распространенный способ  smile 

PM MAIL   Вверх
tulebaev
Дата 9.9.2013, 17:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 7
Регистрация: 17.2.2012

Репутация: нет
Всего: нет



.xlsx-файл представляет собой ZIP архив.
Так что аналогичную проблему я решал простой распаковкой в память нужных данных.
PM MAIL   Вверх
akizelokro
Дата 9.9.2013, 22:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Крокодил
**


Профиль
Группа: Участник
Сообщений: 761
Регистрация: 30.7.2007

Репутация: 1
Всего: 5



Цитата(tulebaev @  9.9.2013,  17:19 Найти цитируемый пост)
.xlsx-файл представляет собой ZIP архив.


Я вот бухаю второй день, но ничерта xslx файл не рпедставляет из себя zip-архив.

Добавлено через 3 минуты и 26 секунд
Находишь библиотеку, котораяработает без установленного Офиса. Это я тебе по чесноку говорю. Как программер, продававший VBA приложения китайцам из Сан-Франциско, потом же юзавший и php-юиюлиотеки для Экселя.
А всё отсальное это ..как бы тебе сказать.
Когда Эксель или Офись ставится, он дофикха чего много меняет.

Добавлено через 13 минут и 29 секунд
xlsx файл это по сути xml файл (если есть вопросы, то я на елансе в клубе Excel Guru)
притом, Учсуд открывает и некие xml-файлы в определенном формате, так же успешно как и xls[-файлы. Задача у тебя найти просто определённый парсер и забить на закон Мэрфи
"Эксперт - любой человек не из нашего города"


--------------------
a = a + b; b = a - b; a = a - b;
PM MAIL   Вверх
xvr
Дата 9.9.2013, 23:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 7046
Регистрация: 28.8.2007
Где: Дублин, Ирландия

Репутация: 60
Всего: 223



Цитата(akizelokro @  9.9.2013,  22:49 Найти цитируемый пост)
Я вот бухаю второй день, но ничерта xslx файл не рпедставляет из себя zip-архив.

Попробуйте на трезвую голову  smile 
Код

> unzip -t securities.xlsx
Archive:  securities.xlsx
    testing: [Content_Types].xml      OK
    testing: _rels/.rels              OK
    testing: xl/_rels/workbook.xml.rels   OK
    testing: xl/workbook.xml          OK
    testing: xl/theme/theme1.xml      OK
    testing: xl/worksheets/sheet2.xml   OK
    testing: xl/worksheets/sheet3.xml   OK
    testing: xl/worksheets/sheet1.xml   OK
    testing: xl/sharedStrings.xml     OK
    testing: xl/styles.xml            OK
    testing: docProps/app.xml         OK
    testing: docProps/core.xml        OK
No errors detected in compressed data of securities.xlsx.


Цитата(akizelokro @  9.9.2013,  22:49 Найти цитируемый пост)
xlsx файл это по сути xml файл

Это набор xml файлов, весьма запутанного содержимого (См. Office Open XML format он же  ECMA-376 он же  ISO 29500:2008)
Генерация xmlx со всеми его возможностями весьма объемная вещь (хотя и довольно простая).

Если нужно ограниченное подмножество, то генератор делается довольно тривиально

PM MAIL   Вверх
akizelokro
Дата 10.9.2013, 04:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Крокодил
**


Профиль
Группа: Участник
Сообщений: 761
Регистрация: 30.7.2007

Репутация: 1
Всего: 5



Код

Это набор xml файлов, весьма запутанного содержимого (См. Office Open XML format он же  ECMA-376 он же  ISO 29500:2008)
Генерация xmlx со всеми его возможностями весьма объемная вещь (хотя и довольно простая).

Вообще-то попробую и на трезвую голову. Ага, тут походу zip-архив. Пить, значит,надо меньше.  smile  
Пусть попробует тогда усеченную версию в виде xml-файла в "Экселевской" версии.  Там как раз то, что в VBA делает импорт/экспорт файла.

А, вообще, это всё глупости. Пусть ищёт опенсорсную либу под С++, навроде ExcelPHP и прилаживает её к проге.
В своё время комитет явно пропарил мозги с тем, что не задал в С++ работу с регулярными выражениями. Это моё чуть более трезвое мнение. С++ очень много теряет именно на этом.


Это сообщение отредактировал(а) akizelokro - 10.9.2013, 04:44


--------------------
a = a + b; b = a - b; a = a - b;
PM MAIL   Вверх
akizelokro
Дата 10.9.2013, 07:07 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Крокодил
**


Профиль
Группа: Участник
Сообщений: 761
Регистрация: 30.7.2007

Репутация: 1
Всего: 5



Проблема в том, что работа с регулярными выражениями должна была быть в языке реализована лет10 так назад. Для нормальной обработки текстов, что уже для языков де-факто стандарт. 
Это по факту бы добавило разработчиков, а следовательно, и новых библиотек.


--------------------
a = a + b; b = a - b; a = a - b;
PM MAIL   Вверх
xvr
Дата 10.9.2013, 10:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 7046
Регистрация: 28.8.2007
Где: Дублин, Ирландия

Репутация: 60
Всего: 223



Цитата(akizelokro @  10.9.2013,  04:17 Найти цитируемый пост)
Пусть ищёт опенсорсную либу под С++, навроде ExcelPHP и прилаживает её к проге.

О! Если найдется, скажите мне тоже. Мне пока таковой найти не удалось (только C#)  smile 

PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С++:Общие вопросы"
Earnest Daevaorn

Добро пожаловать!

  • Черновик стандарта C++ (за октябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика(4.4мб).
  • Черновик стандарта C (за сентябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика (3.4мб).
  • Прежде чем задать вопрос, прочтите это и/или это!
  • Здесь хранится весь мировой запас ссылок на документы, связанные с C++ :)
  • Не брезгуйте пользоваться тегами [code=cpp][/code].
  • Пожалуйста, не просите написать за вас программы в этом разделе - для этого существует "Центр Помощи".
  • C++ FAQ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0889 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.