I want to create a excel sheet .xls file using Qt. I found a examples in a book C++ GUI Programming with Qt4. so I copied and written as follows.
enum { MagicNumber = 0x7F51C883, RowCount = 10, ColumnCount = 5 };
bool MainWindow::writeFile()
{
tr("Cannot write file %1:\n%2.")
.arg(file.fileName())
.arg(file.errorString()));
return false;
}
out << quint32(MagicNumber);
//QApplication::setOverrideCursor(Qt::WaitCursor);
for (int row = 0; row < RowCount; ++row) {
for (int column = 0; column < ColumnCount; ++column) {
if (!str.isEmpty())
out << quint16(row) << quint16(column) << str;
}
}
//QApplication::restoreOverrideCursor();
return true;
}
enum { MagicNumber = 0x7F51C883, RowCount = 10, ColumnCount = 5 };
bool MainWindow::writeFile()
{
QString fileName = "d:\\abc.xls";
QFile file(fileName);
if (!file.open(QIODevice::WriteOnly)) {
QMessageBox::warning(this, tr("Spreadsheet"),
tr("Cannot write file %1:\n%2.")
.arg(file.fileName())
.arg(file.errorString()));
return false;
}
QDataStream out(&file);
out.setVersion(QDataStream::Qt_4_3);
out << quint32(MagicNumber);
//QApplication::setOverrideCursor(Qt::WaitCursor);
for (int row = 0; row < RowCount; ++row) {
for (int column = 0; column < ColumnCount; ++column) {
QString str = QString(tr("test%1%2").arg(row).arg(column));
if (!str.isEmpty())
out << quint16(row) << quint16(column) << str;
}
}
//QApplication::restoreOverrideCursor();
return true;
}
To copy to clipboard, switch view to plain text mode
now its writing data in .xls file but not writing in proper row and column.
how to write in proper row and column?
I am using Qt4.3.1 on win Xp
Bookmarks