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接口, ...
随机推荐
- 基于thinkphp5的Excel上传
涉及知识点: thinkphp5.0: excel上传: mysql建立新表(基本的create语句): mysql ignore(避免重复插入): 主要功能: 通过在视图中上传excel文件,在my ...
- TP5之一次选择多张图片并预览
点击选择图片(可选多张),确定后将选择的图片显示在页面上,已经选择的图片也可以删除,点击提交将图片提交给后台. 1.效果图 2.code 用input标签并选择type=file,记得带上multip ...
- unity surface shader 1
Unity ShaderLib : CGPROGRAM ENDCG之间是CG代码,之外的代码功能都由ShaderLib提供,CG中的一些方法比如tex2D(...)也是ShaderLib对CG进行 ...
- uoj#274. 【清华集训2016】温暖会指引我们前行(LCT)
传送门 不难发现肯定是在温度的最大生成树上走是最优的 于是用\(LCT\)维护最大生成树,每一次加边时如果已经连通,就判断一下路径上的最小温度是否小于当前温度,是的话就断掉那条边,加入新边 //min ...
- [Xcode 实际操作]九、实用进阶-(10)定位设备的使用
目录:[Swift]Xcode实际操作 本文将演示定位设备的使用. 在项目导航区,打开视图控制器的代码文件[ViewController.swift] import UIKit //导入需要用到的定位 ...
- C# CSV文件的导入导出以及datatable转化csv
1.csv文件写入操作 首先,创建datatable对象: DataTable dt = new DataTable(); 添加列: dt.Columns.Add("name", ...
- 学习Mahout (四)
在Mahout 学习(三)中,我贴了example的代码,里面生成向量文件的代码: InputDriver.runJob(input, directoryContainingConvertedInpu ...
- ebullient(2018.10.25)
结论巨好想,每一次操作可以看作把一个b往前移一位,另一个b往后移一位,逆序对个数不改变,判断即可做第一问. 此处代码仅给出第一问做法: #include<cstdio> #include& ...
- 买票案例 1.synchronize关键字 2.lock锁
- hdu 6319 Problem A. Ascending Rating (2018 Multi-University Training Contest 3)
#include <stdio.h> #include <iostream> #include <cstdlib> #include <cmath> # ...