Skip to content
forked from QtExcel/QXlsx

Excel file(*.xlsx) reader/writer library using Qt. Descendant of QtXlsx.

License

Notifications You must be signed in to change notification settings

JiangJinming/QXlsx

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

QXlsx

Read this in other languages: English, 🇰🇷 한국어

Excel(xlsx) reader/writer library

  • QXlsx is excel file(*.xlsx) reader/writer library.
    • Because QtXlsx is no longer supported(2014), I created a new project that is based on QtXlsx. (2017-)
    • Development language of QXlsx is C++. (with Qt 5.x)
    • You don't need to use static library or dynamic shared object using QXlsx.

License

Sample (Hello excel)

1️⃣ Writing excel file(*.xlsx)

QXlsx::Document xlsx;
xlsx.write("A1", "Hello Qt!"); // write "Hello Qt!" to cell(A,1). it's shared string.
xlsx.saveAs("Test.xlsx"); // save the document as 'Test.xlsx'

2️⃣ Reading excel file(*.xlsx)

Document xlsx("Test.xlsx"); // load excel file
if (!xlsx.isLoadPackage()) { // failed to load excel 		
	return;
}
int row = 1; int col = 2;
Cell* cell = xlsx.cellAt(row, col); // get cell pointer. (row is 1. column is 2.)
if ( cell == NULL )
	continue; // cell vaule is not set
QVariant var = cell->readValue(); // read cell value (number(double), QDateTime, QString ...)
qint32 styleNo = cell->styleNumber(); // read cell style number
if ( styleNo >= 0 )
	qDebug() << row << " " << var << " , style:" << styleNo;
else
	qDebug() << row << " " << var;

How to build

  • Install Qt 5 from Qt Company (2017-)
  • Clone github source code
  git clone https://github.com/j2doll/QXlsx.git
  • Build QXlsx project
  cd QXlsx
  qmake QXlsx.pro
  make debug (you may use 'make release'.)
  • Build TestExcel (You can use QXlsx.pri. then you need not to build QXlsx.pro. See TestExcel.pro)
  cd TestExcel
  qmake TestExcel.pro
  make
  • Run TestExcel
 ./TestExcel

Test environment

Test Environment is below.

  • Qt 5.10.1 (MingW/Windows 32bit)
  • Qt 5.9.2 (MingW/Windows 32bit)
  • Qt 5.9.1 (Visual Studio 2017/Windows 64bit)
  • Qt 5.9.1 (Visual Studio 2017/Windows 32bit)
  • Qt 5.9.1 (MingW/Windows 32bit)
  • Qt 5.9.1 (Ubuntu 16/Linux x64)
  • Qt 5.6.0 (MingW/Windows 32bit)
  • Qt 5.5.1 (MingW/Windows 32bit)
  • Qt 5.5.0 (Ubuntu 17/Linux i686)
  • Qt 5.2.0 (Ubuntu 14/Linux x64)
  • Qt 5.0.1 (MingW/Windows 32bit)

To Test

The following tests should be performed.

  • Microsoft Excel
  • Google Spreadsheet
  • LibreOffice Calc Spreasheet

Contacts

About

Excel file(*.xlsx) reader/writer library using Qt. Descendant of QtXlsx.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • C++ 98.2%
  • QMake 1.6%
  • C 0.2%