java excel导出分为两种2003年的格式和2007年的格式。

2003年的xls一个sheet限制65536。

2007年的xlsx限制为1048576。

jxl导入2003

gradle jar包compile group: 'net.sourceforge.jexcelapi', name: 'jxl', version: '2.6.12'

public void writeExcelJXL() {
String path = "/macc/excel/";
String[] titles = {"用户活跃时间","频段","网点名称","下行速率(kbps)","MAC","上线时间","丢包率(‰)","信号强度","SN","时延(ms)","上下行速率(kbps)","上行速率(kbps)","用户ip","下行流量(byte)","上行流量(byte)","上下行流量(byte)"};
List<String> titleList = Arrays.asList(titles);
File file = new File(path);
if(!file.exists())
file.mkdirs(); // 以下开始输出到EXCEL
try {
/** **********创建工作簿************ */
OutputStream os = new FileOutputStream(path + "test.xls");
WritableWorkbook workbook = Workbook.createWorkbook(os); /** **********创建工作表************ */ WritableSheet sheet = workbook.createSheet("Sheet1", 0); /** **********设置纵横打印(默认为纵打)、打印纸***************** */
jxl.SheetSettings sheetset = sheet.getSettings();
sheetset.setProtected(false); /** ************设置单元格字体************** */
WritableFont NormalFont = new WritableFont(WritableFont.ARIAL, 10); /** ************以下设置三种单元格样式,灵活备用************ */
// 用于标题居中
WritableCellFormat wcf_center = new WritableCellFormat(NormalFont);
wcf_center.setBorder(Border.NONE, BorderLineStyle.THIN); // 线条
wcf_center.setVerticalAlignment(VerticalAlignment.CENTRE); // 文字垂直对齐
wcf_center.setAlignment(Alignment.CENTRE); // 文字水平对齐
wcf_center.setWrap(false); // 文字是否换行 /** ***************以下是EXCEL第一行列标题********************* */
for (int i = 0; i < titleList.size(); i++) {
sheet.addCell(new Label(i, 0,titleList.get(i),wcf_center));
}
/** ***************以下是EXCEL正文数据********************* */
int i=1;
List<CurrentUser> listContent = mongo.findAll(CurrentUser.class);
for(CurrentUser obj:listContent){
for (int j = 0; j < titleList.size(); j++) {
Object va = obj.getMac();
if(va != null)
sheet.addCell(new Label(j, i,va.toString(),wcf_center));
}
i++;
}
/** **********将以上缓存中的内容写到EXCEL文件中******** */
workbook.write();
/** *********关闭文件************* */
workbook.close();
System.out.println("finished");
} catch (Exception e) {
e.printStackTrace();
}
}

poi导入2007

compile group: 'org.apache.poi', name: 'poi', version: '3.14'

compile group: 'org.apache.poi', name: 'poi-ooxml', version: '3.14'

private void create2007Excel() {
String path = "/macc/excel/";
String[] titles = {"用户活跃时间","频段","网点名称","下行速率(kbps)","MAC","上线时间","丢包率(‰)","信号强度","SN","时延(ms)","上下行速率(kbps)","上行速率(kbps)","用户ip","下行流量(byte)","上行流量(byte)","上下行流量(byte)"};
List<String> titleList = Arrays.asList(titles);
File file = new File(path);
if(!file.exists())
file.mkdirs();
XSSFWorkbook workbook = new XSSFWorkbook();
try (OutputStream os = new FileOutputStream(path + "test.xlsx")) {
/** **********创建工作簿************ */
XSSFSheet sheet = workbook.createSheet();
/** ***************以下是EXCEL第一行列标题********************* */
XSSFRow titleRow = sheet.createRow(0);
for (int i = 0; i < titleList.size(); i++) {
XSSFCell cell = titleRow.createCell(i);
cell.setCellValue(titleList.get(i));
}
/** ***************以下是EXCEL正文数据********************* */
int i=1;
List<CurrentUser> listContent = mongo.findAll(CurrentUser.class);
int rowNum = 1;
for(CurrentUser obj:listContent){
XSSFRow row = sheet.createRow(rowNum);
rowNum ++;
for (int j = 0; j < titleList.size(); j++) {
Object va = obj.getMac();
if(va != null)
row.createCell(j).setCellValue(va.toString());
}
i++;
}
workbook.write(os);
} catch (Exception e) {
e.printStackTrace();
} System.out.println("创建成功 office 2007 excel");
}

java-excel导出的更多相关文章

  1. Java 通过Xml导出Excel文件,Java Excel 导出工具类,Java导出Excel工具类

    Java 通过Xml导出Excel文件,Java Excel 导出工具类,Java导出Excel工具类 ============================== ©Copyright 蕃薯耀 20 ...

  2. java excel导出(基于注解)

    小白,做日志只是为了方便自己查看,能帮到别人当然更好,不喜勿喷. 上代码 依赖: <dependency> <groupId>org.apache.poi</groupI ...

  3. 自己写的java excel导出工具类

    最近项目要用到excel导出功能,之前也写过类似的代码.因为这次项目中多次用到excel导出.这次长了记性整理了一下 分享给大伙 欢迎一起讨论 生成excel的主工具类: public class E ...

  4. java excel导出(表头合并,多行表头)

    @RequestMapping(value="orderExcelList2") public void orderExcelList2forJava(Order order,Ht ...

  5. java excel导出

    下面是jsp代码: <li class="btns"><input id="btnExport" class="btn btn-pr ...

  6. java反射学习之二万能EXCEL导出

    一.EXCEL导出的实现过程 假设有一个对象的集合,现在需要将此集合内的所有对象导出到EXCEL中,对象有N个属性:那么我们实现的方式是这样的: 循环这个集合,在循环集合中某个对象的所有属性,将这个对 ...

  7. Atitit.excel导出 功能解决方案 php java C#.net版总集合.doc

    Atitit.excel导出 功能解决方案 php java C#.net版总集合.docx 1.1. Excel的保存格式office2003 office2007/2010格式1 1.2. 类库选 ...

  8. java:POI导出excel

    POI是一个开源项目,专用于java平台上操作MS OFFICE,企业应用开发中可用它方便导出Excel. 下面是使用示例: 1.maven中先添加依赖项 <dependency> < ...

  9. java(POI):基于模版的Excel导出功能,局部列写保护总结

    需求描述: 1.导出的Excel中部分列包含有下拉列表,并没有尝试过用代码实现这种功能,个人感觉比较棘手,故采用了模版的形式,直接导出数据到已经创建好的Excel模版中 2.Excel的第一列需要写保 ...

随机推荐

  1. 【C】用我所学去讲C语言指针

    很多人不敢讲C的指针,有些人讲不清,有些人怕讲错.初生牛犊不怕虎,就让我讲讲. 下面开始. 一.指针的定义  指针是内存单元的编号.内存单元是以字节为单位的.所以指针就是字节的编号. 比如我们的个人电 ...

  2. is not configured for rpc

    exec sp_serveroption @server='myserver', @optname='rpc', @optvalue='true' exec sp_serveroption @serv ...

  3. C/C++获取系统时间

    C/C++获取系统时间需要使用Windows API,包含头文件"windows.h". 系统时间的数据类型为SYSTEMTIME,可以在winbase.h中查询到如下定义: ty ...

  4. 转:自定义ASP.NET MVC Html辅助方法

    在ASP.NET MVC中,Html辅助方法给我们程序员带来很多方便,其重要性也就不言自明.有时候,我们不想重复地写一些HTML代码,或者MS没有提供我们想要的那个HTML标签的Html辅助方法,那么 ...

  5. Asp.Net MVC 路由

    原文链接:http://www.asp.net/learn/mvc/ 在这篇教程中,我将为你介绍每个ASP.NET MVC应用程序都具有的一个重要功能,称作ASP.NET路由(ASP.NET Rout ...

  6. Effective Project Communications

    I was recently invited to speak at a conference in Singapore on Effective Project Communications. I' ...

  7. The Simplified Project Management Process

    One of the challenges of explaining project management to people who are unfamiliar with the approac ...

  8. Error Domain=com.alamofire.error.serialization.response Code=-1016 "Request failed: unacceptable con

    AFHTTPSessionManager * manager = [AFHTTPSessionManager manager]; manager.responseSerializer.acceptab ...

  9. Windows-005-显示隐藏文件

    此文主要讲述如何设置 Win7 系统显示隐藏的文件.文件夹和驱动器,敬请亲们参阅.若有不足之处,敬请大神指正,不胜感激!详情如下: Win7 系统安装完成后,默认是不显示隐藏的文件.文件夹和驱动器的( ...

  10. python判断类型

    方法 isinstance(obj, type) 示例 >>> print isinstance(, int) True >>> print isinstance( ...