jueves, 30 de julio de 2015

QtXlsx: Leer y escribir en ficheros .xlsx con Qt

La mejor librería (que he probado) para trabajar con ficheros .xlsx en Qt es QtXlsx.

Para usarla primero debes descargar el src desde aqui:

Si quieres visiar el repo en github:
https://github.com/dbzhang800/QtXlsxWriter


Luego de descargarlo lo descomprimimos en el directorio de nuestro proyecto de Qt


Luego vamos al fichero .pro de nuestro proyecto y agregamos la siguiente linea:

include(QtXlsxWriter-master/src/xlsx/qtxlsx.pri)



Compilas y listo, ya estas listo para el primer ejemplo:
Este código nos permitiría leer las dos primeras columnas de todas las filas.

void Ventana::leerTodo()
{
    QXlsx::Document *docIN= new QXlsx::Document("data.xlsx");
    int nFilas=docIN->dimension().lastRow();

    for (int i = 2; i <= nFilas; ++i) {
        QString nombre  =docIN->read(("A"+QString::number(i)).toString());
        QString apellido=docIN->read(("B"+QString::number(i)).toString());
        
        qWarning()<<"   Nombre  : "<<nombre;
        qWarning()<<"   Apellido: "<<apellido;
        
    }
}

El fichero .xlsx usado es algo así:





1 comentario: