Atitit.导出excel报表的设计与实现java .net php 总结
Atitit.导出excel报表的设计与实现java .net php 总结
1. 导出报表 表格的设计要素1
1.1. 支持通用list<Map>转换1
1.2. 对于空列是否输出1
1.3. 支持http web直接输出1
2. Api2
2.1. private static void toExcel(String titles, String filds,List<Map> list,OutputStream outStrm)2
2.2. Response版 toExcel(String titles, String filds,List<ati> li,HttpServletResponse response )2
2.3. File版 toExcel(String titles, String filds,List<Map> list,String outputFilePath)2
3. Php版本PHPExcel4
1. 导出报表 表格的设计要素
1.1. 支持通用list<Map>转换
1.2. 对于空列是否输出
1.3. 支持http web直接输出
作者:: 绰号:老哇的爪子 ( 全名::Attilax akbar al rapanui 阿提拉克斯 阿克巴 阿尔 拉帕努伊 ) 汉字名:艾龙, EMAIL:1466519819@qq.com
转载请注明来源: http://blog.csdn.net/attilax
2. Api
2.1. private static void toExcel(String titles, String filds,List<Map> list,OutputStream outStrm)
2.2. Response版 toExcel(String titles, String filds,List<ati> li,HttpServletResponse response )
2.3. File版 toExcel(String titles, String filds,List<Map> list,String outputFilePath)
public static void toExcel(String titles, String filds,List<Map> list,String outputFilePath) throws Exception {
// 第一步,创建一个webbook,对应一个Excel文件
HSSFWorkbook wb = new HSSFWorkbook();
// 第二步,在webbook中添加一个sheet,对应Excel文件中的sheet
HSSFSheet sheet = wb.createSheet("sheet1");
// 第三步,在sheet中添加表头第0行,注意老版本poi对Excel的行数列数有限制short
HSSFRow row = sheet.createRow((int) 0);
// 第四步,创建单元格,并设置值表头 设置表头居中
HSSFCellStyle style = wb.createCellStyle();
style.setAlignment(HSSFCellStyle.ALIGN_CENTER); // 创建一个居中格式
String[] tit_arr=titles.split(",");
int n=0;
for(String tit:tit_arr)
{
HSSFCell cell = row.createCell((short) n);
cell.setCellValue(tit);
//cell.set
cell.setCellStyle(style);
n++;
}
// 第五步,写入实体数据 实际应用中这些数据从数据库得到,
for (int i = 0; i < list.size(); i++)
{
row = sheet.createRow((int) i + 1);
Map stu = (Map) list.get(i);
// 第四步,创建单元格,并设置值
int colIndex=0;
for(String tit:tit_arr)
{
String curField=getFild(filds,colIndex);
Object v = stu.get(curField);
if(v==null) v="";
//String val =v.toString();
try{
val= v.toString();
}catch(Exception e){}
//if(val==null)continue;
HSSFCell cell = row.createCell((short) colIndex);
if(v instanceof Integer)
cell.setCellValue(Double.valueOf(v.toString()));
else
cell.setCellValue(v.toString());
//cell.setCellStyle(style);
colIndex++;
}
}
// 第六步,将文件存到指定位置
try
{
//String outputFilePath = "E:/students.xls";
FileOutputStream fout = new FileOutputStream(outputFilePath);
wb.write(fout);
fout.close();
}
catch (Exception e)
{
e.printStackTrace();
}
}
3. Php版本PHPExcel
参考
atitit.查询结果 导出为excel的实现java .net php 总结
Atitit.导出excel报表的设计与实现java .net php 总结相关推荐
- Atitit.导出excel报表的设计与实现java .net php 总
Atitit.导出excel报表的设计与实现java .net php 总结 1. 导出报表 表格的设计要素1 1.1. 支持通用list<Map>转换1 1.2. 对于空列是否输出1 1 ...
- Myxls导出excel报表
最近项目中有一个导出excel报表的需求.大体就是将一个datatable中的数据导出到excel供用户下载.开始也想过几种方法: 1.因为报表已经在页面上展现出来了,所以想能不能使用js直接将页面的 ...
- Java程序员从笨鸟到菜鸟之(一百零四)java操作office和pdf文件(二)利用POI实现数据导出excel报表...
在上一篇博客中,我们简单介绍了java读取word,excel和pdf文档内容 ,但在实际开发中,我们用到最多的是把数据库中数据导出excel报表形式.不仅仅简单的读取office中的数据.尤其是在生 ...
- Acey.ExcelX实例演练(1)—从GridView中导出Excel报表
Acey.ExcelX实例演练(1) -从GridView中导出Excel报表 关键词:GridView,数据绑定,Excel报表 在开发过程中我们经常遇到需要将页面中查看到的数据导出Excel的情况 ...
- java报表的导出excel_java导出excel报表
1.java导出excel报表: package cn.jcenterhome.util; import java.io.OutputStream; import java.util.List; im ...
- Odoo Excel报表的设计及实现
前言: 报表是ERP中必不可少的一个部分,很多ERP开发人员都经历过写报表和改报表,偶尔改报表改到最后不得不重构报表的情况.最近我接了两个改报表的任务(新增一种排序和合计规则),结果改原代码改到90% ...
- php导出excel报表
php导出excel报表方式网上有很多种,有的方法已经过时,有的看不懂,运行有错误,所以找资料时难免苦恼.在这里给大家分享一个简单易用的方法,致力于让大家一看就会,信心百倍.结合实例,利用PHPExc ...
- .NetCore+EPPlus导出Excel报表
.NetCore+EPPlus导出Excel报表 适用于跨平台部署 NuGet引入EPPlus.Core 定义公共调用方法 完成调用 NuGet引入EPPlus.Core 因为本人使用的框架是.Net ...
- asp.net简单实现导出excel报表
关于导出excel报表,网上也是一搜一大把.整理一下,无非就是几种思路,有利用安装excel软件或插件的服务器直接生成,或者直接在客户端生成(通常都是利用excel软件或插件直接在浏览器生成).反正万 ...
- java导出excel报表工具类
自己写的导出excel报表的公共方法,该公共方法主要用于非横向流动性报表导出 1.创立excel基本初始步骤 XSSFWorkbook wb = new XSSFWorkbook();XSSFCell ...
最新文章
- C++中构造函数调用构造函数
- Call to undefined function mysql_connect()
- Elasticsearch压缩索引——lucene倒排索引本质是列存储+使用嵌套文档可以大幅度提高压缩率...
- [K/3Cloud] 创建一个单据转换插件
- NLP-基础知识-002 (语言模型)
- weblogic 异常常见处理方法
- 类oracle数据库pss,Oracle笔记
- http --- HTTPS是在安全的传输层上发送的HTTP
- Rest Framework:二、序列化组件
- python 学生编程--3 多彩同心圆
- python 每周第一天和最后一天
- 树莓派Pico上手初体验,Hello world 双核MCU
- 除了装去广告软件,你还能通过「禁止APP联网」来屏蔽广告
- python爬虫爬取百度图片
- 《财经》杂志:盛大新浪梦纪实(完全版)
- 你理解的精益可能是错的!——从源头重新解读精益
- 路由器显示DNS服务器设置错误,路由器dns设置错误怎么处理
- Unity Timeline 初识
- 硕盟Type-C智能10合一多功能拓展坞|硕盟Type-C转换器
- 关于RPN中proposal的坐标回归参数的一点理解及Faster R-CNN的学习资料
热门文章
- InitializeSecurityDescriptor、InitializeAcl、AddAccessAllowedAce、SetSecurityDescriptorDacl
- Tip: Unicode Debug和Debug有什么区别?
- 使用WordPress插件Advanced custom fields来扩展文章字段
- Linux服务器配置——安装CentOS以及源配置
- 服务器租用别让黑客钻了这些空子
- mock.js那点事(上)
- 【POJ 3062】Party(2-SAT、tarjan)
- (76) Clojure: Why would someone learn Clojure? - Quora
- 数据库连接客户端 dbeaver 程序包以及使用说明
- 【旧文章搬运】深入分析Win7的对象引用跟踪机制