POI创建生成excel及设置相关属性
简单的读写到excel中:
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.OutputStream; 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; public class CreateEx {
/**
*
* 层次结构就是workbook-->Sheet-->Row-->Cell
* 只要按照这种层次结构操作就不会有什么大的问题
* @author Administrator
* @throws IOException
*
*/
public static void main(String[] args) throws IOException {
//HSSFWorkbook对应的是2003
//XSSFWorkbook对应的是2007
//对于03和07它们的操作都是差不多的,只是在需要用07的时候把相应的HSSF前缀改成XSSF前缀就可以了
//第一步建一个工作簿,即workbook
Workbook workbook = new HSSFWorkbook();
//第二步建一个工作表单,急sheet
Sheet sheet = workbook.createSheet("mysheet1");
for (int i=0;i<5;i++) {
//有了表单以后就是行Row了,
Row row = sheet.createRow(i);
for (int j=0;j<5;j++) {
//有了row以后就是row上的一个个小的单元格了
Cell cell = row.createCell(j);
//给单元格添加内容
cell.setCellValue("row"+(i+1)+",column"+(j+1));
}
}
//建一个用于存放新建的excel的文件输出流
OutputStream os = new FileOutputStream("f://2.xls");
//把形成的workbook写到一个输出流里面
workbook.write(os);
os.close();
}
}

合并单元格:
public static void main(String args[]) throws IOException {
HSSFWorkbook wb = new HSSFWorkbook();
HSSFSheet sheet = wb.createSheet("sheet1");
HSSFRow row = sheet.createRow(1);
HSSFCell cell = row.createCell(1);
cell.setCellValue("a test of merge!");
//执行合并操作的语句
sheet.addMergedRegion(new CellRangeAddress(
1,// 开始行
1,// 结束行
1,// 开始列
3// 结束列
));
OutputStream os = new FileOutputStream("f://3.xls");
wb.write(os);
os.close();
}

换行:
public static void main(String args[]) throws IOException {
HSSFWorkbook wb = new HSSFWorkbook();
HSSFSheet sheet = wb.createSheet();
HSSFRow row = sheet.createRow(6);
sheet.autoSizeColumn(2);
for (int i=0;i<5;i++) {
HSSFCell cell = row.createCell(i+2);
HSSFCellStyle style = wb.createCellStyle();
//to set cell newLine should set its wrap true
style.setWrapText(true);
//利用\n来实现换行操作,只有在Cell设置为setWrapText(true)的时候才能实现人为的换行
cell.setCellValue("just use \n to wrap in a cell!");
cell.setCellStyle(style);
}
OutputStream os = new FileOutputStream("f://4.xls");
wb.write(os);
os.close();
}

画图:
public static void main(String[] args) throws IOException {
//drawing shapes
/*
* To create a shape you have to go through the following steps:
1.Create the patriarch.
2.Create an anchor to position the shape on the sheet.
3.Ask the patriarch to create the shape.
4.Set the shape type (line, oval, rectangle etc...)
5.Set any other style details converning the shape. (eg: line thickness, etc...)
*/
HSSFWorkbook wb = new HSSFWorkbook();
HSSFSheet sheet = wb.createSheet();
HSSFPatriarch partriarch = (HSSFPatriarch) sheet.createDrawingPatriarch();
HSSFSimpleShape shape = partriarch.createSimpleShape(new HSSFClientAnchor(0,0,0,0,(short)3,3,(short)5,5));
shape.setShapeType(HSSFSimpleShape.OBJECT_TYPE_OVAL);
//shape可以设置很多的属性
shape.setFillColor(255,200,200);
shape.setLineStyle(HSSFSimpleShape.LINESTYLE_DASHGEL);
//Text boxes are created using a different call:
OutputStream os = new FileOutputStream("f://5.xls");
wb.write(os);
os.close();
}

POI创建生成excel及设置相关属性的更多相关文章
- poi生成excel整理(设置边框/字体/颜色/加粗/居中/)
转: poi生成excel整理(设置边框/字体/颜色/加粗/居中/) 2016年12月02日 11:05:23 吃奶的牛 阅读数:34324 HSSFWorkbook wb = new HSSFW ...
- 【POI】使用POI 创建生成XLS,打开xls文件提示【此文件中某些文本格式可能已经更改,因为它已经超出最多允许的字体数。】
使用POI 创建生成XLS,打开xls文件提示[此文件中某些文本格式可能已经更改,因为它已经超出最多允许的字体数.] 原因: 是因为在POI处理xls的过程中,太多次调用了: HSSFFont fon ...
- asp.net+nopi生成Excel遇到设置单元格值null问题
Npoi 生成excel报表功能很不错,功能也不用给大家介绍了.首先看遇到的问题吧! FileStream file = new FileStream(Server.MapPath("Tem ...
- 使用poi实现生成excel文件
import java.util.ArrayList; import javax.servlet.ServletOutputStream; import org.apache.poi.hssf.use ...
- VBA 打印设置相关属性及方法
打印设置说明,以下均为默认值. With ActiveSheet.PageSetup .PrintTitleRows = "" '工作表打印标题:顶端标题行(R) .PrintTi ...
- 工作总结 @Html 辅助方法 为 生成的 标签设置元素属性 htmlAttributes 一个对象,其中包含要为该元素设置的 HTML 特性。
@Html.RadioButtonFor(m => m.IsJianChe, true, new { @style = "width: 18px; height: 18px;" ...
- Struts2使用POI创建Excel并下载
本文将讲解在Struts2框架下如何使用POI创建Office Excel文档并实现下载功能. Apache POI ,操作微软文档的Java API,简单来说就是可以用来操作Office文档的API ...
- poi自动生成Ecxel表格和Chart图表
最近因为业务需求,需要做poi自动导出Ecxel表格和Chart折线图的功能. 所以我在网上找到了一篇关于poi生成Chart图表的博客,代码很详细,但是缺少相关注释说明. 想要将它改造成自己需要的样 ...
- springMVC(4)---生成excel文件并导出
springMVC(4)---生成excel文件并导出 在开发过程中,需要将数据库中的数据以excel表格的方式导出. 首先说明.我这里用的是Apache的POI项目,它是目前比较成熟的HSSF接口, ...
随机推荐
- jquery冲突的关键字nodeName、nodeValue和nodeType!
原文:http://blog.csdn.net/hdfyq/article/details/52805836 [缘由]在工作流数据库设计的时候, 都节点管理的功能. 结果有2个字段为 NODE_ ...
- unity3d 在UGUI中制作自适应调整大小的滚动布局控件
http://blog.csdn.net/rcfalcon/article/details/43459387 在游戏中,我们很多地方需要用到scroll content的概念:我们需要一个容器,能够指 ...
- Codevs 3134 Circle
3134 Circle 题目描述 Description 在一个圆上,有2*K个不同的结点,我们以这些点为端点,连K条线段,使得每个结点都恰好用一次.在满足这些线段将圆分成最少部分的前提下,请计算有多 ...
- GenericKeychain
KeychainItemWrapper是apple官方例子“GenericKeychain”里一个访问keychain常用操作的封装类,在官网上 下载了GenericKeychain项目后,只需要把“ ...
- 笔记-JavaWeb学习之旅11
请求转发:一种在服务器内部的资源跳转方式 使用步骤 1.通过request对象获取请求转发器对象:RequestDispatcher getRequestDispatcher(String path) ...
- STC单片机掉电断电失电瞬间EEPROM数据保存处理办法(转)
由于客户在请人设计开发一设备,但是设备用户处总停电,造成设备及其周边耗材损耗严重,因此请我司在现有STC为主要芯片的基础上做掉电瞬间EEPROM里的20个参数保存,上电后通过读取EEPROM中的参数回 ...
- D - Fliptile
#include <stdio.h> #include <iostream> #include <math.h> #include <algorithm> ...
- [題解](最短路)luogu_P2384最短路
hack: 4 4 1 2 10000 2 3 10000 3 4 10000 1 4 10000 答案:13 不能邊最短路邊取模,因為取模后最大值不一定為原來最大值,所以利用log(m*n)=log ...
- [題解](最小生成樹/LCA)luogu_P1967貨車運輸
一道好題不出所料又抄的題解 1.首先對於這張圖肯定要考慮走哪些邊不走哪些邊,發現我們想要的肯定那些邊權最大的邊,所以想到最大生成樹 這樣能保證選到盡量大的邊 2.跑完最大生成樹后每兩點之間就有唯一路徑 ...
- Git本地分支与远程分支关联
当clone完版本库,切换到开发分支后,使用git pull -r 拉取并合并分支之后会出现一下提示: $ git pull -rFrom ssh://192.168.1.226:29418/etha ...