Aspose.cell生成表格
public void ExportQueryPrj(HttpContext context)
{
//接受前端传递参数和数据
string datasource = context.Request["queryResult"]; //序列化后的json字符串
List<QueryXM> queryList = JSONStringToList<QueryXM>(datasource); //反序列化json字符串为list
if (queryList.Count > 0)
{
Workbook workbook = new Workbook();//工作薄
Worksheet worksheet = workbook.Worksheets[0];//工作表
Cells cells = worksheet.Cells;//单元格 //表头部分
cells[0, 0].PutValue("索引值");
cells[0, 1].PutValue("项目ID");
cells[0, 2].PutValue("用地位置");
cells[0, 3].PutValue("项目名称");
cells[0, 4].PutValue("建设单位");
cells[0, 5].PutValue("用地性质");
cells[0, 6].PutValue("用地面积");
cells[0, 7].PutValue("项目类型");
cells[0, 8].PutValue("红线类别");
cells[0, 9].PutValue("用地分类");
cells[0, 10].PutValue("BELONGTFZX");
cells[0, 11].PutValue("TDCRSTATUS");
cells[0, 12].PutValue("TDYT");
cells[0, 13].PutValue("JSYDFL"); //调整宽度
cells.SetColumnWidth(2, 40);
cells.SetColumnWidth(3, 60);
cells.SetColumnWidth(4, 80);
cells.SetColumnWidth(7, 40);
cells.SetColumnWidth(8, 20);
//内容
for (int i = 0; i < queryList.Count; i++)
{ cells[i+1, 0].PutValue(queryList[i].OBJECTID);
cells[i + 1, 1].PutValue(queryList[i].PrjID);
cells[i + 1, 2].PutValue(queryList[i].FADDRESS);
cells[i + 1, 3].PutValue(queryList[i].PRJNAME);
cells[i + 1, 4].PutValue(queryList[i].FCOMPANY);
cells[i + 1, 5].PutValue(queryList[i].YDXZ);
cells[i + 1, 6].PutValue(queryList[i].YDMJ);
cells[i + 1, 7].PutValue(queryList[i].XMLX);
cells[i + 1, 8].PutValue(queryList[i].TYPE);
cells[i + 1, 9].PutValue(queryList[i].YDFL);
cells[i + 1, 10].PutValue(queryList[i].BELONGTFZX);
cells[i + 1, 11].PutValue(queryList[i].TDCRSTATUS);
cells[i + 1, 12].PutValue(queryList[i].TDYT);
cells[i + 1, 13].PutValue(queryList[i].JSYDFL); cells.SetRowHeight(i + 1, 25); //设置行高
}
string filepath= "../Aspose/QueryExcel/项目查询报告"+DateTime.Now.ToString("yyyymmddHHmmss")+".xls";
string fileServerPath = context.Server.MapPath(filepath);
if (!File.Exists(fileServerPath))
{
var myfile = File.Create(fileServerPath);
myfile.Close();
}
workbook.Save(fileServerPath);
//按照json格式返回前端数据
ResponseResult response = new ResponseResult() { responseMark = 1, responseObject = filepath };
context.Response.Write(new JavaScriptSerializer().Serialize(response));
} }
Aspose.cell生成表格的更多相关文章
- Aspose.Cell和NPOI生成Excel文件
1.使用Aspose.Cell生成Excel文件,Aspose.Cell是.NET组件控件,不依赖COM组件 1首先一点需要使用新建好的空Excel文件做模板,否则容易产生一个多出的警告Sheet 1 ...
- 使用Aspose.Cells生成Excel的线型图表
目的: 1.根据模板里面的excel数据信息,动态创建line chart 2.linechart 的样式改为灰色 3.以流的形式写到客户端,不管客户端是否装excel,都可以导出到到客户端 4.使用 ...
- 使用Aspose.Cell控件实现Excel高难度报表的生成(三)
在之前几篇文章中,介绍了关于Apsose.cell这个强大的Excel操作控件的使用,相关文章如下: 使用Aspose.Cell控件实现Excel高难度报表的生成(一) 使用Aspose.Cell控件 ...
- 使用Aspose.Cell控件实现Excel高难度报表的生成(一)
时光飞逝,生活.工作.业余研究总是在不停忙碌着,转眼快到月底,该月的博客文章任务未完,停顿回忆一下,总结一些经验以及好的东西出来,大家一起分享一下.本文章主要介绍报表的生成,基于Aspose.Cell ...
- (转)使用Aspose.Cell控件实现Excel高难度报表的生成(一)
本文章主要介绍报表的生成,基于Aspose.Cell控件的报表生成.谈到报表,估计大家都有所领悟以及个人的理解,总的来说,一般的报表生成,基本上是基于以下几种方式:一种是基于微软Excel内置的引擎来 ...
- 使用Aspose.Cell控件实现Excel高难度报表的生成(二)
继续在上篇<使用Aspose.Cell控件实现Excel高难度报表的生成(一)>随笔基础上,研究探讨基于模板的Aspose.cell报表实现,其中提到了下面两种报表的界面,如下所示: 或者 ...
- 使用Aspose.Cell控件实现Excel高难度报表的生成
1.使用Aspose.Cell控件实现Excel高难度报表的生成(一) http://www.cnblogs.com/wuhuacong/archive/2011/02/23/1962147.html ...
- java 如何在pdf中生成表格
1.目标 在pdf中生成一个可变表头的表格,并向其中填充数据.通过泛型动态的生成表头,通过反射动态获取实体类(我这里是User)的get方法动态获得数据,从而达到动态生成表格. 每天生成一个文件夹存储 ...
- 利用Aspose.Word控件和Aspose.Cell控件,实现Word文档和Excel文档的模板化导出
我们知道,一般都导出的Word文档或者Excel文档,基本上分为两类,一类是动态生成全部文档的内容方式,一种是基于固定模板化的内容输出,后者在很多场合用的比较多,这也是企业报表规范化的一个体现. 我的 ...
随机推荐
- LAMP 1.6 Discuz打开错误
打开discuz失败, ps aux |grep mysql ps aux |grep httpd 查看mysql apache有没有打开. 重启mysql service mysqld restar ...
- vue.js 使用高德地图
1.获取key值 注册成为高德开发者需要分三步: 第一步,注册高德开发者: 第二步,去控制台创建应用: 第三步,获取Key 2.修改配置文件 webpack.base.conf.js externa ...
- 网络编程中阻塞和非阻塞socket的区别
阻塞socket和非阻塞socket 建立连接阻塞方式下,connect首先发送SYN请求道服务器,当客户端收到服务器返回的SYN的确认时,则connect返回.否则的话一直阻塞.非阻塞方式,conn ...
- 业务逻辑:完成客户下单后前台系统的数据处理并调用后台系统服务处理业务 webservice接口调用 有用
思路: 页面提交表单后,在Action类中将页面提交的参数进行组装,随后通过使用Webservice技术来远程调用后台系统的业务接口服务来进行订单的保存操作 操作步骤: 在前台系统的Action类中通 ...
- 21 、GPD-PSL-VCF
https://genome.ucsc.edu/FAQ/FAQformat.html#format9 1.Variant Call Format(VCF) Example ##fileformat=V ...
- 20. CTF综合靶机渗透(十三)
靶机说明: Wellcome to "PwnLab: init", my first Boot2Root virtual machine. Meant to be easy, I ...
- 理解setTimeout和setInterval
setTimeout和setInterval,这两个js函数都是用来定时执行.setTimeout执行一次,setInterval执行多次. 问题出现在今天,使用setInterval是,设置执行速度 ...
- BootStrap2学习日记23---弹出对话框
<a href="#login" data-toggle="modal" class="btn btn-primary">登陆& ...
- 《Linux内核设计与实现》读书笔记(三)- Linux的进程
进程是所有操作系统的核心概念,同样在linux上也不例外. 主要内容: 进程和线程 进程的生命周期 进程的创建 进程的终止 1. 进程和线程 进程和线程是程序运行时状态,是动态变化的,进程和线程的管理 ...
- THE WAY TO HACKER
1/编程篇88课时(预计三个月) 此阶段主要侧重于培养学员发现问题的能力,并对各大平台各个操作系统有一个整体性认知,迅速建立起较高的计算机素养,并形成对于信息安全核心思想的初步探索及认知,为后续专项课 ...