基于Apache POI 向xlsx写入数据
【0】写在前面
- 0.1) these codes are from 基于Apache POI 的向xlsx写入数据
- 0.2) this idea is from http://cwind.iteye.com/blog/2187670 , adding some comments for easy understanding proves to be my work.
package com.cwind.poi;
import java.io.FileOutputStream;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.apache.poi.ss.usermodel.Cell;
import org.apache.poi.ss.usermodel.Row;
import org.apache.poi.ss.usermodel.Sheet;
import org.apache.poi.ss.usermodel.Workbook;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;
/**
* @author Billy Chen
*/
public class SimpleDatasheetWriter {
private static final String[] titles = {
"姓名", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday"};
//sample data to fill the sheet.
private static final String[][] data = {
{"AngelaBaby", "跑了", "跑了", "跑了", "跑了", "跑了"},
{"邓超", "跑了", "跑了", "没跑", "跑了", "跑了" },
{"王祖蓝", "没跑", "没跑", "没跑", "跑了", "跑了" },
{"王宝强", "跑了", "跑了", "跑了", "跑了", "跑了" },
{"郑恺", "跑了", "跑了", "跑了", "跑了", "跑了" }
};
public static void main(String[] args) throws Exception {
Workbook wb;
//创建工作簿
if(args.length > 0 && args[0].equals("-xls"))
wb = new HSSFWorkbook();
else
wb = new XSSFWorkbook();
//创建名为 Running Man 的纸张
Sheet sheet = wb.createSheet("Running Man");
//创建行坐标为0的行(为什么管它叫坐标,不把它叫做行,呵呵)
Row headerRow = sheet.createRow(0);
//设置行高
headerRow.setHeightInPoints(12.75f);
for (int i = 0; i < titles.length; i++) {
//创建行坐标为0的单元格,且其列坐标为i;
Cell cell = headerRow.createCell(i);
//设置单元格的value
cell.setCellValue(titles[i]);
}
Row row;
Cell cell;
int rownum = 1;
for (int i = 0; i < data.length; i++, rownum++) {
//创建行坐标为rownum 的行
row = sheet.createRow(rownum);
if(data[i] == null) continue;
for (int j = 0; j < data[i].length; j++) {
// 为行创建单元格;
cell = row.createCell(j);
// 设置单元格的value
cell.setCellValue(data[i][j]);
}
}
System.out.println("Default column width: " + sheet.getRow(0).getLastCellNum());
System.out.println("Default column width: " + sheet.getRow(0).getPhysicalNumberOfCells());
// Write the output to a file
String file = "E:/bench-cluster/temp-resource/RunningMan.xlsx";
if(wb instanceof XSSFWorkbook) file += "x";
FileOutputStream out = new FileOutputStream(file);
wb.write(out);
out.close();
// BufferedWriter bw = new BufferedWriter(new FileWriter(file));
}
}
基于Apache POI 向xlsx写入数据的更多相关文章
- 基于Apache POI 从xlsx读出数据
[0]写在前面 0.1) these codes are from 基于Apache POI 的从xlsx读出数据 0.2) this idea is from http://cwind.iteye. ...
- Java导出数据行写入到Excel表格:基于Apache POI
Java导出数据行写入到Excel表格:基于Apache POI import java.io.File; import java.io.FileOutputStream; import org.ap ...
- 项目一:第四天 1、快递员的条件分页查询-noSession,条件查询 2、快递员删除(逻辑删除) 3、基于Apache POI实现批量导入区域数据 a)Jquery OCUpload上传文件插件使用 b)Apache POI读取excel文件数据
1. 快递员的条件分页查询-noSession,条件查询 2. 快递员删除(逻辑删除) 3. 基于Apache POI实现批量导入区域数据 a) Jquery OCUpload上传文件插件使用 b) ...
- 基于Apache Thrift的公路涵洞数据交互实现原理
基于Apache Thrift的公路涵洞数据交互实现原理 Apache Thrift简介 Apache Thrift(以下简称为“Thrift”) 是 Facebook 实现的一种高效的.支持多种编程 ...
- 用 Apache POI 读取 XLSX 数据
最近因为项目的原因,需要从一些 Microsoft Office Excel 文件读取数据并加载到数据库. Google了一下方法,发现其实可以用的 Java 第三方库很多,最著名的是 Apache ...
- 利用poi向excle写入数据
import java.io.FileInputStream;import java.io.FileOutputStream;import java.io.IOException;import org ...
- apache poi 读取xlsx并导出为json(没考虑xls)
1.用到的jar包:fastjson-1.2.9.poi(poi-3.15.poi-ooxml-3.15.poi-ooxml-schemas-3.15.xmlbeans-2.6.0.commons-c ...
- Java 使用Apache POI读取和写入Excel表格
1,引入所用的包 <dependency> <groupId>org.apache.poi</groupId> <artifactId>poi-ooxm ...
- 基于Apache Hudi构建分析型数据湖
为了有机地发展业务,每个组织都在迅速采用分析. 在分析过程的帮助下,产品团队正在接收来自用户的反馈,并能够以更快的速度交付新功能. 通过分析提供的对用户的更深入了解,营销团队能够调整他们的活动以针对特 ...
随机推荐
- 《手把手教你学C语言》学习笔记(10)--- 程序的循环控制
C语言程序设计中,有些代码需要重复执行很多次,循环主要有三类: 一.for循环 1.基本格式为:for(表达式1:表达式2:表达式3){ //表达式1:循环变量赋初值 //表达式2:循环变量满足的条件 ...
- 常用 vim 命令总结
学习 vim ,是需要经常使用的,而这些命令,是我这段时间最常用的命令,很有效率的提高的我的文本编辑效率.----------------------------------------------- ...
- eWebEditor不支持IE7以上版本Bug修改
修改: \Include\Editor.js //把此行 if (element.YUSERONCLICK) eval(element.YUSERONCLICK + "anonymous() ...
- 深入Java—String源代码
/* * @(#)String.java 1.204 06/06/09 * * Copyright 2006 Sun Microsystems, Inc. All rights reserved. * ...
- 浅谈.Net异步编程的前世今生----EAP篇
前言 在上一篇博文中,我们提到了APM模型实现异步编程的模式,通过使用APM模型,可以简化.Net中编写异步程序的方式,但APM模型本身依然存在一些缺点,如无法得知操作进度,不能取消异步操作等. 针对 ...
- ios学习的博客地址
1.文顶顶博客 http://www.cnblogs.com/wendingding/ 2.唐巧的博客: http://blog.devtang.com/ 唐巧总结的40个国人iOS技术博客 博客 ...
- 【DQ冰淇淋】—— Babylon 冰淇淋三维互动营销项目总结
前言:在学习过Babylon.js基础之后,我上手的第一个网页端3D效果制作项目就是‘DQ冰淇淋’.这个小项目应用到了Babylon最基础的知识,既可以选味道,选点心,也可以旋转.倒置冰淇淋,互动起来 ...
- 服务器性能之CPU
有时我们会发现开发的应用在CPU核数一样的虚拟服务器上性能表现出较大的差异,这是为什么呢?上次有童鞋问到我这样一个问题,所以我根据自己的理解给大家简说下! CPU生产商为了提高CPU的性能,通常做法是 ...
- springMVC --配置具体与注讲解明
<?xml version="1.0" encoding="UTF-8"? > <beans xmlns="http://www.s ...
- bzoj1061【NOI2008】志愿者招募
1061: [Noi2008]志愿者招募 Time Limit: 20 Sec Memory Limit: 162 MB Submit: 2740 Solved: 1703 [Submit][id ...