乔山办公网我们一直在努力
您的位置:乔山办公网 > excel表格制作 > qt中怎样将表格中数据导出为excel文件-chrome导出excel,谷歌浏览器导出excel设置

qt中怎样将表格中数据导出为excel文件-chrome导出excel,谷歌浏览器导出excel设置

作者:乔山办公网日期:

返回目录:excel表格制作


当你复制zhidao如下的文字到EXCEL中时会自然的变成表格

<table>
<tbody>
<tr>
<td>名称</td>
<td>数量</td>
</tr>
<tr>
<td>A</td>
<td>52</td>
</tr>
<tr>
<td>B</td>
<td>38</td>
</tr>
<tr>
<td>C</td>
<td>39</td>
</tr>
<tr>
<td>D</td>
<td>30</td>
</tr>
</tbody>
</table>



所以一般只要打开源代码复制<table>……</table>的内容到Excel中即可获得表格。



如果你在做一个报表类的程序,可能将内容导e799bee5baa6e997aee7ad94e59b9ee7ad94365出为Excel文件是一项必须的功能。之前使用MFC的时候我就写过一个类,用于将grid中的数据导出为Excel文件。在使用了QtSql模块后,我很容易的将这个类改写应用在Qt程序中。类的名字叫“ExportExcelObject”。使用起来很简单:

[cpp] view plaincopy
// 1. declare an object

// – fileName Excel 文件路径

// – sheetName Excel 工作表(sheet)名称

// – tableView 需要导出的QTableView指针

ExportExcelObject obj(fileName, sheetName, tableView);

// 2. define fields (columns) to the Excel sheet file

// – 第1个参数是QTableView的列

// – 第2个参数是对应该列的Excel sheet中的列名

// – 第3个参数是该列的类型,可以使用char(x) (x最大255),int,datetime, 等

obj.addField(1, tr("name"), "char(60)");

obj.addField(2, tr("ID"), "int");

obj.addField(3, tr("time"), " datetime ");

// 3. 该类有特定的SIGNAL用于连接一个progress控件,可以显示导出进度

connect(&obj, SIGNAL(exportedRowCount(int)), progressBar, SLOT(setValue(int)));

// 4. do the work

int retVal = obj.export2Excel();

if(retVal > 0)

{//done

}

else

{//something wrong

}
那么这个类是怎样实现的呢?
1. 将Excel文件当成是一个数据库
使用MS的ODBC或ADO都可以将Excel文件当做一个数据库,那么我们只需要使用下面这个DSN连接串去创建并连接至该Excel文件:

[cpp] view plaincopy
QString dsn = QString("DRIVER={Microsoft Excel Driver (*.xls)};DSN=''; FIRSTROWHASNAMES=1;;CREATE_DB=/"%1/";DBQ=%2").

arg(excelFilePath).arg(excelFilePath);

2. 将Excel的工作表(sheet)当成是一个数据库表
可以使用SQL语句“CREATE TABLE” 去创建一个工作表。

3. 向表中插入数据
使用SQL的“INSERT”语句插入数据。

4. Unicode支持
是的,列名和数据都支持Unicode。
看不懂你意思··是在GOOGLE浏览器里导出JS的表吗?JS代码是封装的··你拿不出来的··

你找找 chrome的应用商店有没有

相关阅读