LINUX.ORG.RU

Qt + xls


0

1

Курсач. В качестве исходных данных. Пара столбиков из документа xls. Как их прочесть? Нашел неплохо вот тут.http://www.code-guru.ru/code/%D1%81%D0%B8%D0%BD%D1%82%D0%B5%D0%B7-qt-%D0%B8-excel Но там есть как считать. Насколько я понял нужно давать запросы. Но где их найти. Есть ещё варианты работы как с базой. Но как, где есть какие-либо примеры или документация, как прочесть какие либо значения из xls. Желательно кросплатформенно, ибо писать буду на Linux, а сдавать надо под виндой.


#include <qaxobject.h>
QAxObject* excel = new QAxObject( "Excel.Application", this );
//получаем указатьтель на excel
excel->dynamicCall( "SetVisible(bool)", TRUE ); //делаем его видимым

эээ... А в линуксах ActiveX появился?

seed_stil ★★
()
Ответ на: комментарий от anonymous

Таково ТЗ. А может можно как-то незаметно использовать питон? Там насколько я помню есть это. Только как из Qt вызвать питон, которые прочтёт xls, и вернёт его в в Qt.

vsrmis
() автор топика

Не проще ли будет конвертнуть xls в csv и работать дальше с ним?

Доступ к MSOffice документам в Qt - только с помощью ActiveX, под линуксом их (вроде) нет.

schizoid ★★★
()
Ответ на: комментарий от seed_stil

прочёл что QActiveX нет в Линях :( Что вполне ожидаемо, но как тогда прочетсь xls. Слышал что в Lible Office делают Perlom.

vsrmis
() автор топика
Ответ на: комментарий от schizoid

плюсую csv.

Можно заюзать ooconvert и перевести xls в csv. А потом уже нормально с ним работать. Обратно можно делать так же - подготовить csv файл и тем же конвертером в xls.

silw ★★★★★
()

В Gnumeric есть libspreadsheet.so, может он что-то умеет.

anonymous
()

Строго xls или xlsx пойдет? Второй, будучи OOXML, должен быть zip + xml - вынимается относительно просто. Правда, полагаю, Win32 + ActiveX будет проще.

Pavval ★★★★★
()

По крайней мере под вендой xls можно прочитать через ODBC. Если конечно драйвер стоит (Ставится вроде вместе с офисом). А по поводу linux - не знаю есть ли драйвер. Надо гуглить.

com
()
Ответ на: комментарий от com

Решил всё-же сделать с помошью Pyside

vsrmis
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.