求助,用Qt的数据的方式打开Excel失败

shn521 2014-12-04 05:42:14
QSqlDatabase db = QSqlDatabase::addDatabase("QODBC");
db.setDatabaseName("Driver={Microsoft Excel Driver (*.xls)};DBQ=E:\\test.xls");
bool bOpen = db.open();

这个是成功的
但把后缀都改为xlsx就失败了
QSqlDatabase db = QSqlDatabase::addDatabase("QODBC");
db.setDatabaseName("Driver={Microsoft Excel Driver (*.xlsx)};DBQ=E:\\test.xlsx");
bool bOpen = db.open(); 打开失败
...全文
631 6 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
ibm123 2014-12-05
  • 打赏
  • 举报
回复
高版本的驱动串是不一样的: DRIVER={Microsoft Excel Driver (*.xls, *.xlsx, *.xlsm, *.xlsb)}
suirosu 2014-12-05
  • 打赏
  • 举报
回复
qt 只支持xml为基础的xslx的Excel文件,也就是保存时要选择"Strick Open XML (*.xlsx)"。 使用方法: QSqlDatabase db = QSqlDatabase::addDatabase("QODBC"); db.setDatabaseName("DRIVER={Microsoft Excel Driver (*.xls)};DBQ=" + QString("c:\\file.xlsx")); if(db.open()) { QSqlQuery query("select * from [" + QString("Sheet1") + "$]"); // Select range, place A1:B5 after $ while (query.next()) { QString column1= query.value(0).toString(); qDebug() << column1; } } 具体可参考:http://qt-project.org/wiki/Handling_Microsoft_Excel_file_format 给分吧!我只有10分了, 贴子都不能发!谢谢了!
shn521 2014-12-04
  • 打赏
  • 举报
回复
引用 3 楼 suirosu 的回复:
直接用: QSqlDatabase db = QSqlDatabase::addDatabase("QODBC"); db.setDatabaseName("Driver={Microsoft Excel Driver (*.xls)};DBQ=E:\\test.xls"); bool bOpen = db.open(); 不就行了。
你的回答我不会给你分的。
suirosu 2014-12-04
  • 打赏
  • 举报
回复
直接用: QSqlDatabase db = QSqlDatabase::addDatabase("QODBC"); db.setDatabaseName("Driver={Microsoft Excel Driver (*.xls)};DBQ=E:\\test.xls"); bool bOpen = db.open(); 不就行了。
suirosu 2014-12-04
  • 打赏
  • 举报
回复
直接用: QSqlDatabase db = QSqlDatabase::addDatabase("QODBC"); db.setDatabaseName("Driver={Microsoft Excel Driver (*.xls)};DBQ=E:\\test.xls"); bool bOpen = db.open(); 不就行了。 你好多分,就是看你分来的。
suirosu 2014-12-04
  • 打赏
  • 举报
回复
直接用: QSqlDatabase db = QSqlDatabase::addDatabase("QODBC"); db.setDatabaseName("Driver={Microsoft Excel Driver (*.xls)};DBQ=E:\\test.xls"); bool bOpen = db.open(); 不就行了。 你好多分,就是看你分来的。

16,818

社区成员

发帖
与我相关
我的任务
社区描述
Qt 是一个跨平台应用程序框架。通过使用 Qt,您可以一次性开发应用程序和用户界面,然后将其部署到多个桌面和嵌入式操作系统,而无需重复编写源代码。
社区管理员
  • Qt
  • 亭台六七座
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧