一、新建工作簿、sheet、单元格

 public static void main(String[] args) throws Exception {
Workbook wb = new HSSFWorkbook(); //定义一个新的工作簿
Sheet sheet = wb.createSheet("第一个sheet页");
wb.createSheet("第二个sheet页");
Row row = sheet.createRow(0); //创建第0行
Cell cell = row.createCell(0); //创建一个单元格,第0行,第1列
cell.setCellValue(1); //给单元格设置值
row.createCell(1).setCellValue(1.2); //第2列
row.createCell(2).setCellValue("这是一个字符串");
row.createCell(3).setCellValue(false);
FileOutputStream fileOut = new FileOutputStream("E:\\用POI搞出来的工作簿3.xls");
wb.write(fileOut);
fileOut.close();
}

效果图:

二、创建一个时间格式的单元格:

 public static void main(String[] args) throws Exception {
Workbook wb = new HSSFWorkbook(); //定义一个新的工作簿
Sheet sheet = wb.createSheet("第一个sheet页");
wb.createSheet("第二个sheet页");
Row row = sheet.createRow(0); //创建第0行
Cell cell = row.createCell(0); //创建一个单元格,第0行,第1列
cell.setCellValue(new Date()); CreationHelper creationHelper = wb.getCreationHelper();
CellStyle cellStyle = wb.createCellStyle();
//设置单元格时间格式
cellStyle.setDataFormat(creationHelper.createDataFormat().getFormat("yyyy-mm-dd hh:mm:ss"));
cell = row.createCell(1); //第2列
cell.setCellValue(new Date());
cell.setCellStyle(cellStyle); cell = row.createCell(2); //第3列
cell.setCellValue(Calendar.getInstance());
cell.setCellStyle(cellStyle); FileOutputStream fileOut = new FileOutputStream("E:\\工作簿.xls");
wb.write(fileOut);
fileOut.close();
}

效果:

三、创建不同格式的单元格:

/**
* 创建不同格式的单元格
*/
public static void main(String[] args) throws Exception {
Workbook wb = new HSSFWorkbook(); //定义一个新的工作簿
Sheet sheet = wb.createSheet("第一个sheet页");
Row row = sheet.createRow(0); //第一行
row.createCell(0).setCellValue(new Date()); //第1列
row.createCell(1).setCellValue(1);
row.createCell(2).setCellValue("一个字符串");
row.createCell(3).setCellValue(true);
row.createCell(4).setCellValue(HSSFCell.CELL_TYPE_NUMERIC);
row.createCell(5).setCellValue(false); FileOutputStream fileOut = new FileOutputStream("E:\\工作簿2.xls");
wb.write(fileOut);
fileOut.close();
}

三、遍历一个工作簿:

 /**
* 遍历一个工作簿
*/
public static void main(String[] args) throws Exception {
InputStream is = new FileInputStream("E:\\二货.xls");
POIFSFileSystem ps = new POIFSFileSystem(is);
HSSFWorkbook wb = new HSSFWorkbook(ps);
HSSFSheet hssfSheet = wb.getSheetAt(0); //获取第一个sheet页
if(hssfSheet == null){
return;
}
//遍历row
for(int rowNum=0; rowNum<=hssfSheet.getLastRowNum(); rowNum++){
HSSFRow hssfRow = hssfSheet.getRow(rowNum);
if(hssfRow == null){
continue;
}
//遍历行
for(int cellNum=0; cellNum<=hssfRow.getLastCellNum(); cellNum++){
HSSFCell hssfCell = hssfRow.getCell(cellNum);
if(hssfCell == null){
continue;
}
System.out.print(getValue(hssfCell) + " ");
} System.out.println();
} is.close();
} private static String getValue(HSSFCell hssfCell){
if(hssfCell.getCellType() == HSSFCell.CELL_TYPE_BOOLEAN){
return String.valueOf(hssfCell.getBooleanCellValue());
}else if(hssfCell.getCellType() == HSSFCell.CELL_TYPE_NUMERIC){
return String.valueOf(hssfCell.getNumericCellValue());
}else{
return String.valueOf(hssfCell.getStringCellValue());
}
}

四、提取文本:

 /**
* 提取文本
*/
public static void main(String[] args) throws Exception {
InputStream is = new FileInputStream("E:\\二货.xls");
POIFSFileSystem ps = new POIFSFileSystem(is);
HSSFWorkbook wb = new HSSFWorkbook(ps); ExcelExtractor excelExtractor = new ExcelExtractor(wb);
excelExtractor.setIncludeSheetNames(false); //不需要sheet页的名字
System.out.println(excelExtractor.getText());
}

java操作Excel之POI(1)的更多相关文章

  1. java操作excel总结---poi

    前不久做过Excel的导入导出功能,其主要的难点是java如何操作Excel文档.现在就来介绍一下利用Apache的poi如何操作Excel. 1.准备工作:导入Apache POI的相关jar包,P ...

  2. 一脸懵逼学习Java操作Excel之POI(Apache POI)

    Apache POI是Apache软件基金会的开放源码函式库,POI提供API给Java程序对Microsoft Office格式档案读和写的功能. 1:下面简单的程序来创建一个空白Microsoft ...

  3. Java操作Excel之POI简单例子

    /** * 利用POI操作Excel表单 * * 需要jar包: * HSSF针对03及以前版本,即.xls后缀 * |---poi-3.16.jar * XSSF针对07及以后版本,即xlsx后缀 ...

  4. Java 操作Excel 之Poi(第一讲)

    1.Poi 简介 Apache POI是Apache软件基金会的开放源码函式库,POI提供API给Java程序对Microsoft Office格式档案读和写的功能.HSSF - 提供读写Micros ...

  5. Java操作excel(POI)

    由于在项目中使用了将excel数据导入到数据库.在这里分享一下. 这里使用的POI方式,支持两种格式(xls,xlsx) package com.entity; import java.io.File ...

  6. java操作Excel的poi的简介

    一.POI概述 Apache POI是Apache软件基金会的开放源码函式库,POI提供API给Java程序对Microsoft Office格式档案读和写的功能. 结构: HSSF - 提供读写Mi ...

  7. java操作Excel之POI(5)利用POI实现使用模板批量导出数据

    后台导出方法: 在源文件夹src下面放个准备好的模板:/com/cy/template/userExportTemplate.xls,这个模板有头部一行: /** * 后台导出方法 * 利用POI实现 ...

  8. java操作Excel之POI(4)利用POI实现数据的批量导出

    后台导出方法: /** * 后台导出方法 * 利用POI实现数据的批量导出 */ public String export() throws Exception{ Connection con = n ...

  9. Java操作Excel之Poi

    package com.java1234.poi; import java.io.FileOutputStream; import org.apache.poi.hssf.usermodel.HSSF ...

  10. java操作Excel的poi的导出Excel表格

    页面布局 点击导出用户:触发函数,直接访问后台 后台方法如下: public String export()throws Exception{ Connection con=null; try { c ...

随机推荐

  1. windows自动快捷方式

    http://jingyan.baidu.com/article/dca1fa6fb8c408f1a5405242.html

  2. Python & PyCharm & Django 搭建web开发环境(续)

    由于Django自带轻量级的server,因此在前篇博文中,默认使用该server,但实际生产中是不允许这么干的,生产环境中通常使用Apache Httpd Server结合mod_wsgi.so来做 ...

  3. 指针和const一些注意事项

    1.常量指针(底层const) 指向常量的指针,指针所指向的对象的值无法被修改,若想存放常量对象的地址,只能使用指向常量的指针. 2.指针常量(顶层const) 指针本身是常量,指针本身的值不可修改. ...

  4. windows 开发者神器 tc – total command和替代品

    作为开发者,windows上开发时,会运用一些神器,比如:total commander,搜索目录.查看文件.批量重命名等非常方便. tc是收费版的,有个免费的替代版本Just manager:htt ...

  5. DevExpress v18.1新版亮点——WinForms篇(五)

    用户界面套包DevExpress v18.1日前终于正式发布,本站将以连载的形式为大家介绍各版本新增内容.本文将介绍了DevExpress WinForms v18.1 的新功能,快来下载试用新版本! ...

  6. JDK安装和环境变量配置-成功经验

    JDK安装和环境变量配置1.下载安装软件 2.安装JDK--开发环境,路径 3.之后打开安装路径下的bin文件夹路径,我的是默认安装C:\Program Files\Java\jdk1.6.0_10\ ...

  7. 第七届蓝桥杯个人赛省赛--C语言B组

    题目一 煤球数目 有一堆煤球,堆成三角棱锥形.具体:第一层放1个,第二层3个(排列成三角形),第三层6个(排列成三角形),第四层10个(排列成三角形),....如果一共有100层,共有多少个煤球? 请 ...

  8. 接口测试之postman-简单使用

    Postman功能(https://www.getpostman.com/features) 主要用于模拟网络请求包 快速创建请求 回放.管理请求 快速设置网络代理 安装 下载地址:https://w ...

  9. HDU 2813

    http://acm.hdu.edu.cn/showproblem.php?pid=2813 裸二分图最优匹配,需要用两个map把武将名字映射到点的序号上 #include <iostream& ...

  10. IOS UIImage两种初始化的区别

    UIImage可以通过以下两种方式进行初始化: 1 //第一种初始化方式:[注意使用这种初始化的时候如果是png格式的可以不给后缀名,根据屏幕的的分辨率去匹配图片] 2 3 UIImage *imag ...