java 操作Excel表格
对于Excel表格的解析、生成,java在 org.apache.poi 包中已经封装好了,使用比较简单。
解析Excel:
首先将File文件转成InputStream
InputStream in = file.getInputStream();
然后创建表格对象,如果是2003版本的使用 HSSFWorkbook,2007以上的使用 XSSFWorkbook
HSSFWorkbook workbook = new HSSFWorkbook(in);// 创建对Excel工作薄文件的引用
接下来获取工作表
HSSFSheet sheet = workbook.getSheetAt();// 引用第一张工作表
获取行
HSSFRow row = sheet.getRow();//获取第一行
获取单元格
HSSFCell cell=row.getCell()//获取第一个单元格
获取单元格的内容
String str=cell.getStringCellValue();//文本
Double money=cell.getNumericCellValue();//数字
可以这样封装一下
private static String getStringFormCell(HSSFCell cell) {
try {
return cell.getStringCellValue();
} catch (java.lang.IllegalStateException ex) {
return String.valueOf(cell.getNumericCellValue());
}
}
最后通过遍历行、列就能实现解析了
生成Excel:
生成excel要注意网页前端用ajax请求不能接收文件流,可以直接用超链接的方式直接GET调用后台方法,js的写法就是
window.location.href=XXXXX //请求地址
创建excel
HSSFWorkbook hssfWorkbook = new HSSFWorkbook();
HSSFSheet sheet = hssfWorkbook.createSheet(sheetName);//创建工作表
创建行
HSSFRow row = sheet.createRow(rowIndex);
创建一个单元格的格式(可选)
HSSFCellStyle style = hssfWorkbook.createCellStyle();
style.setAlignment(HSSFCellStyle.ALIGN_CENTER); // 创建一个居中格式
创建一个单元格并设置格式、值
HSSFCell cell = row.createCell(cellIndex);
cell.setCellValue(cellValue);
cell.setCellStyle(style);
最后设置请求参数并输出文件
response.setContentType("application/msexcel;charset=UTF-8");
response.addHeader("Content-Disposition","attachment;filename=" + new String((fileName+ ".xls").getBytes("GBK"), "ISO8859_1"));
OutputStream out = response.getOutputStream();
hssfWorkbook.write(out);
out.flush();
out.close();
java 操作Excel表格的更多相关文章
- 使用Java操作Excel表格
目录 一.配置第三方库 二.使用Apache POI API 1. 打开Excel文件 2. 选择对应的sheet 3. Sheet接口的基本使用 3.1 获取开头行和结束行 3.2 获取Row对象 ...
- Java操作excel表格
(1)Java读取excel表格 package com.songyan.excel; import java.io.File; import java.io.FileInputStream; imp ...
- Java——操作Excel表格,读取表格内容
JAVA EXCEL API:是一开放源码项目,通过它Java开发人员可以读取Excel文件的内容.创建新的Excel文件.更新已经存在的Excel文件.使用该API非Windows操作系统也可以通过 ...
- jxl的使用总结(java操作excel)
jxl.jar是通过java操作excel表格的工具类库: jxl.jar包:链接:http://pan.baidu.com/s/1o8qFJHw 密码:5jyq 1:通过模拟实现创建一个表格,然后模 ...
- 【转载】jxl的使用总结(java操作excel)
jxl.jar是通过java操作excel表格的工具类库: 链接:https://pan.baidu.com/s/1AAT_eA_Q47zFeQohap6eQg 提取码:777b 1:通过模拟实现创建 ...
- Java 操作 EXCEL
今天帮朋友写了一段用来处理EXCEL内容的程序,在这里记录下自己的学习过程.主要是对EXCEL表格中的内容做分类和统计,使用计算机来做这种重复的机械性地工作再好不过了.首先,我们需要下载一个java操 ...
- JAVA操作Excel时文字自适应单元格的宽度设置方法
使用JAVA操作Excel通常都使用JXL,方法很简单网上也有很多的教程,然后往往一些细节性的问题却导致我们这些Programmer苦恼不已.这两天帮一个朋友做一个Excel表格自动生成的小软件,就遇 ...
- java操作excel 工具类
java操作excel 可参考https://blog.csdn.net/xunwei0303/article/details/53213130 直接上代码: 一.java生成excel文件: pac ...
- java实现excel表格导入数据库表
导入excel就是一个上传excel文件,然后获取excel文件数据,然后处理数据并插入到数据库的过程 一.上传excel 前端jsp页面,我的是index.jsp 在页面中我自己加入了一个下载上传文 ...
随机推荐
- Windows下配置nginx+FastCgi + Spawn-fcgi
前提: 下载nginx, FastCgi, Spawn-fcgi Spawn-fcgi有个Windows的版本,但不能在VS中编译,这里有一个编译好的版本:http://download.csdn.n ...
- mysql的基本使用命令
启动:net start mySql; 进入:mysql -u root -p/mysql -h localhost -u root -p databaseName; 列出数据库:show datab ...
- 关于CKEditor4.5.6的使用,自定义toolbar配置,上传图片案例(SpringMVC+MyBatis案例),自定义行高,去编辑器的中内容,将编辑器中内容设置到指定的位置等
关于CKEditor的一个配置整理,改文件为config.js: 文件内容如下: /** * @license Copyright (c) 2003-2016, CKSource - Frede ...
- 看看腾讯是怎么做产品设计分析的 - 腾讯QQ音乐业务产品规划
- H5 学习之旅-H5表格(7)
表格语法 table:简历表格 captian:表格标题 th:表格行表头 tr:表格行 td:单元格 thead:表格页眉 tfoot:表格页脚 tbody:表格主体 col:列属性 !!!代码实例 ...
- 【算法导论】单源最短路径之Dijkstra算法
Dijkstra算法解决了有向图上带正权值的单源最短路径问题,其运行时间要比Bellman-Ford算法低,但适用范围比Bellman-Ford算法窄. 迪杰斯特拉提出的按路径长度递增次序来产生源点到 ...
- [前端]Emmet 基本语法快查
Emmet 是一种快速写html的语法,通过几个简单的缩写,就可以拓展成html标签,工作中写html多多少少会有一些,使用的语法都是基础语法,这里总结下最常用的几个,备查. 这个插件支持非常多的ID ...
- Java-ServletContextEvent-ServletContextAttributeEvent
//这是一个事件类用来通知一个web 应用的servlet 上下文的改变 public class ServletContextEvent extends java.util.EventObject ...
- 如何设计一个可用的web容器
之前在另外一个平台(http://www.jointforce.com/jfperiodical/article/1035)发表的一篇文章,现在发布到自己的博客上. 开发一个web容器涉及很多不同方面 ...
- Linux打包命令 - tar
上一篇文章谈到的命令大多仅能针对单一文件来进行压缩,虽然 gzip 与 bzip2 也能够针对目录来进行压缩, 不过,这两个命令对目录的压缩指的是『将目录内的所有文件 "分别" 进 ...