HSSFWorkbook操作excel读写
//exlel读操作
MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest) request;
Iterator<String> iter = multipartRequest.getFileNames();
File fileFile = null;
while (iter.hasNext()) {
MultipartFile multipartFile = multipartRequest.getFile(iter.next());
String sourceName = multipartFile.getOriginalFilename();
String base = request.getSession().getServletContext().getRealPath("/");
File file = new File(base);
if(!file.exists()){
file.mkdirs();
}
String path=base + File.separator + sourceName;
File fileFile = new File(path);
multipartFile.transferTo(fileFile);
HSSFWorkbook wb = new HSSFWorkbook(new FileInputStream(file));
HSSFSheet sheet = wb.getSheetAt(0);
for(int j=0;j<sheet.getLastRowNum()+1;j++) {
HSSFRow row = sheet.getRow(j);
for(int i1=0; i1<row.getLastCellNum(); i1++) {
HSSFCell cell = row.getCell(i1);
System.out.println(cell.getRichStringCellValue());
}
}
}
//exlel写操作
// 第一步,创建一个webbook,对应一个Excel文件
HSSFWorkbook wb = new HSSFWorkbook();
// 第二步,在webbook中添加一个sheet,对应Excel文件中的sheet
HSSFSheet sheet = wb.createSheet(name);
// 第三步,在sheet中添加表头第0行,注意老版本poi对Excel的行数列数有限制short
HSSFRow row = sheet.createRow(0);
// 第四步,创建单元格,并设置值表头 设置表头居中
HSSFCellStyle style = wb.createCellStyle();
style.setAlignment(HSSFCellStyle.ALIGN_CENTER);
sheet.setColumnWidth(0, 10000);
sheet.setColumnWidth(1, 7000);
sheet.setColumnWidth(2, 4000);
cell.setCellValue(TeacherConstant.TCITY);
cell.setCellStyle(style);
cell = row.createCell(1);
cell.setCellValue(TeacherConstant.TNAME);
cell.setCellStyle(style);
cell = row.createCell(2);
cell.setCellValue(TeacherConstant.TPHONE);
cell.setCellStyle(style);
for (int i = 0; i < pmUsers.size(); i++) {
Map<String, Object> map = pmUsers.get(i);
row = sheet.createRow(i + 1);
cell = row.createCell(0);
cell.setCellStyle(style);
cell.setCellValue(new HSSFRichTextString(map.get("TotalCityName") + ""));
cell = row.createCell(1);
cell.setCellStyle(style);
cell.setCellValue(new HSSFRichTextString(map.get("teacher_name") + ""));
cell = row.createCell(2);
cell.setCellStyle(style);
cell.setCellValue(new HSSFRichTextString(map.get("teacher_phone") + ""));
}
// 第六步,将文件存到指定位置
FileOutputStream file = null;
String fileAdd = "";
if (pmUsers.size() > 0) {
if (paramBean.getCityId() == null) {
fileAdd = realPath + pmUsers.get(0).get("TotalCityName").toString().substring(0, 3) + TeacherConstant.TTABLE + TeacherConstant.XLS;
} else if (paramBean.getCountyId() == null) {
fileAdd = realPath + pmUsers.get(0).get("TotalCityName").toString().substring(0, 6) + TeacherConstant.TTABLE + TeacherConstant.XLS;
} else {
fileAdd = realPath + pmUsers.get(0).get("TotalCityName").toString().substring(0, 9) + TeacherConstant.TTABLE + TeacherConstant.XLS;
}
} else {
return;
}
try
{
file = new FileOutputStream(fileAdd);
wb.write(file);
}
catch (Exception e)
{
e.printStackTrace();
}
finally {
file.close();
}
HSSFWorkbook操作excel读写的更多相关文章
- python使用xlrd 操作Excel读写
此文章非本人 一.安装xlrd模块 到python官网下载http://pypi.python.org/pypi/xlrd模块安装,前提是已经安装了python 环境. 二.使用介绍 1.导入模块 i ...
- python操作Excel读写--使用xlrd和xlwt
一.安装xlrd模块 到python官网下载http://pypi.python.org/pypi/xlrd模块安装,前提是已经安装了python 环境. 进入到解压文件路径,输入 setup.py ...
- python操作Excel读写--使用xlrd
一.安装xlrd模块 到python官网下载http://pypi.python.org/pypi/xlrd模块安装,前提是已经安装了python 环境. 二.使用介绍 1.导入模块 import x ...
- python操作Excel读写(使用xlrd和xlrt)
包下载地址:https://pypi.python.org/pypi/xlrd 导入 import xlrd 打开excel data = xlrd.open_workbook('demo.xls ...
- python操作Excel读写--使用xlrd (转)
(转自:http://www.cnblogs.com/lhj588/archive/2012/01/06/2314181.html) 一.安装xlrd模块 到python官网下载http://pypi ...
- NX二次开发-基于MFC界面的NX对Excel读写操作(OLE方式(COM组件))
NX二次开发API里没有对EXCAL读写操作的相关函数,市面上有很多种方法去实现,比如UFUN调KF,ODBC,OLE(COM组件)等等.这里我是用的OLE(COM组件)方式去做的,这种在VC上创建的 ...
- Python操作Excel
一.系统性学习 对于操作Excel,需要Xlrd/xlwt这两个模块,下面推荐出系统性学习的网址: python操作Excel读写--使用xlrd 官方文档 Python 使用 Xlrd/xlwt 操 ...
- python excel 读写
python操作Excel读写--使用xlrd xlwt python中使用xlrd.xlwt操作excel表格详解
- Java学习---Excel读写操作
1.1.1. 简介 Apache POI 使用Apache POI 完成Excel读写操作 Apache POI 是用Java编写的免费开源的跨平台的 Java API,Apache POI提供API ...
随机推荐
- 苹果手机上点击WEUI日期控件不容易点中
主要问题是WEUI cells有Padding,而苹果手机一般屏幕较小,容易点不中导致的 <div class='weui_cell' style="padding-bottom:0p ...
- 28. SpringBoot 集成Redis
1.引入依赖: <dependency> <groupId>org.springframework.boot</groupId> <artifactId> ...
- vim 配置一:
一.vim前期准备 安装vimsudo apt-get install vim 需要保证自己的 vim 配置在 7.4 以上,有些插件只支持 7.4 以上的 vim 在根目录下建立 .vimrc 文件 ...
- luogu P4099 [HEOI2013]SAO
传送门 吐槽题目标题 这个依赖关系是个树,可以考虑树型dp,设f_i表示子树i的答案 因为这是个序列问题,是要考虑某个数的位置的,所以设\(f_{i,j}\)表示子树i构成的序列,i在第j个位置的方案 ...
- if 语句
if 判断条件的时候,如果是多个条件一起进行判断,那么就需要逻辑运算符 并且-----------and 或者-----------or 非(取反)----not if 条件1 and 条件2 ...
- 表单相关标签之input标签
用于搜集用户信息. <input type="text" name="fname" /> 标签属性 type 规定 input 元素的类型.输入字段 ...
- 自动化测试平台的搭建--Jenkins
1.下载:进入官网https://jenkins.io/download/,直接下载war包(约70M): 2.将下载好的war包直接放入到tomcat/webapp下: 3.进入bin目录下启动服务 ...
- A - Arcade Game Gym - 100814A (概率思维题)
题目链接:https://cn.vjudge.net/contest/285964#problem/A 题目大意:每一次给你你一个数,然后对于每一次操作,可以将当前的数的每一位互换,如果互换后的数小于 ...
- AngularJS--及其他js框架对比
----和 **类似?? Angular 2.谷歌的 React Facebook的 Vue.js. Ember.js. https://github.com/angular/angular.js ...
- layer兼容性问题
一.Layer 弹出层在ie8错乱的解决办法 弹出层在火狐.谷歌.360极速模式.IE6下都能100%面积正常显示,但在IE8和360的兼容模式下只显示弹出层下半部分或右半部分的内容,在主页面加上: ...