qt技巧--使用html导出表格替代excel
{
QString begin = QString::fromLocal8Bit("<HTML><HEAD></HEAD><BODY><TABLE CELLSPACING=0 cellpadding=10 COLS=8 BORDER=1 ><TR><TD COLSPAN=8 ALIGN=CENTER VALIGN=MIDDLE><FONT SIZE=8 COLOR=RED>表格测试</TD></TR><TR><TD ALIGN=CENTER VALIGN=MIDDLE><FONT SIZE=4 > 序号 </TD><TD ALIGN=CENTER VALIGN=MIDDLE><FONT SIZE=4> 日期 </TD><TD ALIGN=CENTER VALIGN=MIDDLE><FONT SIZE=4> 飞机 </TD><TD ALIGN=CENTER VALIGN=MIDDLE><FONT SIZE=4> 大炮 </TD><TD ALIGN=CENTER VALIGN=MIDDLE><FONT SIZE=4> 火箭 </TD><TD ALIGN=CENTER VALIGN=MIDDLE><FONT SIZE=4> 轮船 </TD><TD ALIGN=CENTER VALIGN=MIDDLE><FONT SIZE=4> 汽车 </TD><TD ALIGN=CENTER VALIGN=MIDDLE><FONT SIZE=4> 我的自行车 </TD></TR>");
QString mid = QString::fromLocal8Bit("<TR><TD ALIGN=CENTER VALIGN=MIDDLE >%1</TD><TD ALIGN=CENTER VALIGN=MIDDLE >%2</TD><TD ALIGN=CENTER VALIGN=MIDDLE >%3</TD><TD ALIGN=CENTER VALIGN=MIDDLE >%4</TD><TD ALIGN=CENTER VALIGN=MIDDLE >%5</TD><TD ALIGN=CENTER VALIGN=MIDDLE >%6</TD><TD ALIGN=CENTER VALIGN=MIDDLE >%7</TD><TD ALIGN=CENTER VALIGN=MIDDLE >%8</TD></TR>");
QString end = QString::fromLocal8Bit("</TABLE></BODY></HTML>");
QString mid2 = mid.arg(1).arg(2).arg(3).arg(4).arg(5).arg(6).arg(7).arg(8);
QString mid3 = mid.arg("a").arg("b").arg("c").arg("d").arg("e").arg("f").arg("g").arg("h");
begin.append(mid2);
begin.append(mid3);
begin.append(end);
textEdit->setText(begin);
{
QString fn = QFileDialog::getSaveFileName(this, tr("Save as..."),
QString(), tr("EXCEL files (*.xls);;ODS files (*.ods);;ODF files (*.odt);;HTML-Files (*.htm *.html);;All Files (*)"));
return;
if (! (fn.endsWith(".xls", Qt::CaseInsensitive)||fn.endsWith(".odt", Qt::CaseInsensitive) || fn.endsWith(".htm", Qt::CaseInsensitive) || fn.endsWith(".html", Qt::CaseInsensitive)|| fn.endsWith(".ods", Qt::CaseInsensitive)) )
fn += ".xls"; // default
if (fn.endsWith(".odt", Qt::CaseInsensitive)){
QTextDocumentWriter writer(fn);
writer.write(textEdit->document());
}else{
QFile index(fn);
if (index.open(QFile::WriteOnly | QIODevice::Text))
{
QTextStream liu(&index);
liu.setCodec("UTF-8");
liu<<textEdit->document()->toHtml("UTF-8");
}
}
}
本文出自 “人生得意须尽欢” 博客,请务必保留此出处http://no001.blog.51cto.com/1142339/274776
qt技巧--使用html导出表格替代excel的更多相关文章
- Vue 导出表格为Excel
放法有多种,我这里是直接转JSON数据为Excel. 1.既然要使用,那首先当然是安装依赖,在终端命令输入: npm install -S file-saver xlsx npm install -D ...
- 【js】js导出表格到excel
js: function method(tableid) //读取表格中每个单元到EXCEL中 { var curTbl = document.getElementById(tableid); var ...
- FineUI小技巧(3)表格导出与文件下载
需求描述 实际应用中,我们可能需要导出表格内容,或者在页面回发时根据用户权限下载文件(注意,这里的导出与下载,都是在后台进行的,和普通的一个链接下载文件不同). 点击按钮导出表格 由于FineUI 默 ...
- 百度地图里面搜索到的公司商家电话导出表格?怎样将把百度地图里面搜索到的公司 电话 地址 等数据导出excel里?
好多人在问:如何将百度地图里面搜索到的公司商家电话导出表格?怎样将把百度地图里面搜索到的公司 电话 地址 等数据导出excel里? 现在,很多人都在网络上找商家,联系业务. 百度地图里有很多的商家联系 ...
- 在ASP.NET Web Forms中使用页面导出伪xls Excel表格
将数据导出为Excel表格是比较常见的需求,也有很多组件支持导出真正的Excel表格.由于Excel能打开HTML文件,并支持其中的table元素以及p之类的文本元素的显示,所以把.html扩展名改为 ...
- PHP批量导出数据为excel表格
之前用插件phoexcel写过批量导入数据,现在用到了批量导出,就记录一下,这次批量导出没用插件,是写出一个表格,直接输出 //$teacherList 是从数据库查出来的二维数组 $execlnam ...
- thinkphp导出csv文件,用表格输出excel
1.thinkphp导出csv文件 导出csv文件可能就那几行代码,今天有个问题困扰我好久,就是导出之后出现一些html代码,这个不应该,view里面是空的,controller中最后也没有$this ...
- PHP读取excel表格,和导出表格
读取表格 public function excel(){ import("Common.Vendor.Excel.PHPExcel"); $filename="./fi ...
- java使用freemarker导出复杂的excel表格
正常导出excel表格使用的poi,但是导出复杂的excel有点困难,但是可以使用freemaker模板来导出复杂的excel. 1.都是先生成一个Excel表格的模板,最好是增加一行数据.具体看图里 ...
随机推荐
- 控制器管理UINavigationController、UINavigationBar
控制器管理 掌握 控制器以及view的多种创建方式 UINavigationController的简单使用:添加\移除子控制器 UINavigationBar内容的设置 控制器的生命周期方法 Segu ...
- 怎样在log4j.xml配置文件中引入变量:小公司经验较多的我和阿里UC等大公司经验较多的Boss,一些技术交流和探讨
从最初学习使用log4j的时候,网上和书本上主要都是使用"log4j.properties"这种属性格式,配置日志.多年以来,一直使用这种格式,总的来说,简单.够用. 而有十 ...
- 学习鸟哥的Linux私房菜笔记(14)——硬件配置与管理
一.设备文件 Linux沿袭了Unix的风格,将所有设备看成一个文件 设备文件分为两种: 块设备文件(b):比如硬盘.光驱 字符设备文件(c):比如串口.键盘 设备文件一般存放在/dev目录下 二.常 ...
- Java爬虫框架WebMagic入门——爬取列表类网站文章
初学爬虫,WebMagic作为一个Java开发的爬虫框架很容易上手,下面就通过一个简单的小例子来看一下. WebMagic框架简介 WebMagic框架包含四个组件,PageProcessor.Sch ...
- iOS6 与iOS7以及7以上状态栏的颜色设置
iOS7默认状态栏文字颜色为黑色 修改为白色的方法:(chenyong注意 我的Status bar style 使用的仍是默认值Gray style(default)) 1在Info.plist中设 ...
- base64编码转图片
protected void Button1_Click(object sender, EventArgs e) { //strImg为base64编码的图片字符串 string strImg = & ...
- Massively parallel supercomputer
A novel massively parallel supercomputer of hundreds of teraOPS-scale includes node architectures ba ...
- OVS 派OFPT_PORT_STATUS 流程
依据openflow合约[OFP1.0-38],当从物理端口ovs datapath 添加,改动或者删除的时候.都会先运行详细动作.然后通过ofp_port_status异步消息告知Controlle ...
- Win7,Vista UAC下应用程序标注为“需要管理员权限”的四种方法(可以修改注册表)
[转]Vista UAC下应用程序标注为“需要管理员权限”的四种方法 在Microsoft 的UACBlog里对此有过叙述.总结如下: 首先,如果一个程序被识别为管理员程序时,Vista会在它的图标上 ...
- markdownpad 2 的使用
1. 注册 邮箱:Soar360@live.com 授权秘钥: GBPduHjWfJU1mZqcPM3BikjYKF6xKhlKIys3i1MU2eJHqWGImDHzWdD6xhMNLGVpbP2M ...