简单的读写到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及设置相关属性的更多相关文章

  1. poi生成excel整理(设置边框/字体/颜色/加粗/居中/)

    转: poi生成excel整理(设置边框/字体/颜色/加粗/居中/) 2016年12月02日 11:05:23 吃奶的牛 阅读数:34324   HSSFWorkbook wb = new HSSFW ...

  2. 【POI】使用POI 创建生成XLS,打开xls文件提示【此文件中某些文本格式可能已经更改,因为它已经超出最多允许的字体数。】

    使用POI 创建生成XLS,打开xls文件提示[此文件中某些文本格式可能已经更改,因为它已经超出最多允许的字体数.] 原因: 是因为在POI处理xls的过程中,太多次调用了: HSSFFont fon ...

  3. asp.net+nopi生成Excel遇到设置单元格值null问题

    Npoi 生成excel报表功能很不错,功能也不用给大家介绍了.首先看遇到的问题吧! FileStream file = new FileStream(Server.MapPath("Tem ...

  4. 使用poi实现生成excel文件

    import java.util.ArrayList; import javax.servlet.ServletOutputStream; import org.apache.poi.hssf.use ...

  5. VBA 打印设置相关属性及方法

    打印设置说明,以下均为默认值. With ActiveSheet.PageSetup .PrintTitleRows = "" '工作表打印标题:顶端标题行(R) .PrintTi ...

  6. 工作总结 @Html 辅助方法 为 生成的 标签设置元素属性 htmlAttributes 一个对象,其中包含要为该元素设置的 HTML 特性。

    @Html.RadioButtonFor(m => m.IsJianChe, true, new { @style = "width: 18px; height: 18px;" ...

  7. Struts2使用POI创建Excel并下载

    本文将讲解在Struts2框架下如何使用POI创建Office Excel文档并实现下载功能. Apache POI ,操作微软文档的Java API,简单来说就是可以用来操作Office文档的API ...

  8. poi自动生成Ecxel表格和Chart图表

    最近因为业务需求,需要做poi自动导出Ecxel表格和Chart折线图的功能. 所以我在网上找到了一篇关于poi生成Chart图表的博客,代码很详细,但是缺少相关注释说明. 想要将它改造成自己需要的样 ...

  9. springMVC(4)---生成excel文件并导出

    springMVC(4)---生成excel文件并导出 在开发过程中,需要将数据库中的数据以excel表格的方式导出. 首先说明.我这里用的是Apache的POI项目,它是目前比较成熟的HSSF接口, ...

随机推荐

  1. ajaxForm上传文件到本地服务器(封装)

    不啰嗦,直接看代码 1.html: <div class="con-item fix"> <span class="f">文章封面< ...

  2. lightoj1026【tarjan】

    题意: 据说就是找桥: 思路: 无敌RE......是cmp写挫了...现在数组开太大了 模板题: #include <bits/stdc++.h> using namespace std ...

  3. HDU4973 【几何。】

    题意: 给你一个以原点为圆心的两个圆,一个大圆,一个小圆,然后给你一个硬币和他的速度,问你经过大圆的时间: 思路: 直接杠.. 然后wa的怀疑人生,后面wa在了速度的方向,如果我说一个点在两个圆的左上 ...

  4. HDU1598【最小生成树拓展】

    参考自 http://www.cnblogs.com/nanke/archive/2012/02/13/2350008.html PS: 没想到最小生成树的kruskal算法从小到大枚举边,然后MAX ...

  5. 51nod1414【思维】

    思路: 直接可以枚举1-n,如果枚举到是n的约数i,那么暴力枚举起点,其余点用i累加就一定是正多边形.复杂度是(n*n的公约数个数(最多80)): const int N=2e4+10; int a[ ...

  6. P5137 polynomial(分治)

    传送门 神仙--这题有毒-- 一直在那里考虑没有逆元怎么办然后考虑解exgcd巴拉巴拉 最后只好看题解了 而且这题龟速乘都不行--得用代码里那种叫人半懂不懂的方式取模-- //minamoto #in ...

  7. 浅谈Nginx服务器的内部核心架构设计

    前言 Nginx 是一个 免费的 , 开源的 , 高性能 的 HTTP 服务器和 反向代理 ,以及 IMAP / POP3代理服务器. Nginx 以其高性能,稳定性,丰富的功能,简单的配置和低资源消 ...

  8. TYVJ1432 楼兰图腾

    Description 平面上有 N(N≤[10]^5 ) 个点,每个点的横.纵坐标的范围都是 1~N,任意两个点的横.纵坐标都不相同.若三个点 (x_1,y_1),(x_2,y_2),(x_3,y_ ...

  9. [題解](水/并查集)luogu_P2170選學霸

    很簡單的水題,因為智障沒有A所以發篇博客 同樣的題:luogu_P1455 搭配購買 用并查集維護一下所有實力相等的人的size,然而你可以選多個size......,於是跑個背包就行了,只要注意一下 ...

  10. POJ-3159-Candies-(差分约束,Dijkstra)

    链接:https://vjudge.net/problem/POJ-3159 题意: N个小孩,M个约束 以A,B,C给出.即小孩B的糖果不能比A多C以上. 思路: 差分约束: 若有 A-B < ...