问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

Java用POI读Excel,读出的数据如何放在一个实体数组中,给个思路,不要说一个一个的set进去,简单点的,谢

发布网友 发布时间:2022-04-29 22:32

我来回答

4个回答

热心网友 时间:2023-10-09 19:36

import org.apache.poi.hssf.usermodel.HSSFCell;
import org.apache.poi.hssf.usermodel.HSSFCellStyle;
import org.apache.poi.hssf.usermodel.HSSFRow;
import org.apache.poi.hssf.usermodel.HSSFSheet;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.apache.poi.poifs.filesystem.POIFSFileSystem;
/**
* @param inputFile 输入模板文件路径
* @param outputFile 输入文件存放于服务器路径
* @param dataList 待导出数据
* @throws Exception
* @roseuid:
*/
public void exportExcelFile(String inputFile, String outputFile, List dataList) throws Exception
{
//用模板文件构造poi
POIFSFileSystem fs = new POIFSFileSystem(new FileInputStream(inputFile));
//创建模板工作表
HSSFWorkbook templatewb = new HSSFWorkbook(fs);
//直接取模板第一个sheet对象
HSSFSheet templateSheet = templatewb.getSheetAt(1);
//得到模板的第一个sheet的第一行对象 为了得到模板样式
HSSFRow templateRow = templateSheet.getRow(0);

//HSSFSheet timplateSheet = templatewb.getSheetAt(1);
//取得Excel文件的总列数
int columns = templateSheet.getRow((short) 0).getPhysicalNumberOfCells();
Debug.println("columns is : " + columns);
//创建样式数组
HSSFCellStyle styleArray[] = new HSSFCellStyle[columns];

//一次性创建所有列的样式放在数组里
for (int s = 0; s < columns; s++)
{
//得到数组实例
styleArray[s] = templatewb.createCellStyle();
}
//循环对每一个单元格进行赋值
//定位行
for (int rowId = 1; rowId < dataList.size(); rowId++)
{
//依次取第rowId行数据 每一个数据是valueList
List valueList = (List) dataList.get(rowId - 1);
//定位列
for (int columnId = 0; columnId < columns; columnId++)
{
//依次取出对应与colunmId列的值
//每一个单元格的值
String dataValue = (String) valueList.get(columnId);
//取出colunmId列的的style
//模板每一列的样式
HSSFCellStyle style = styleArray[columnId];
//取模板第colunmId列的单元格对象
//模板单元格对象
HSSFCell templateCell = templateRow.getCell((short) columnId);
//创建一个新的rowId行 行对象
//新建的行对象
HSSFRow hssfRow = templateSheet.createRow(rowId);
//创建新的rowId行 columnId列 单元格对象
//新建的单元格对象
HSSFCell cell = hssfRow.createCell((short) columnId);
//如果对应的模板单元格 样式为非锁定
if (templateCell.getCellStyle().getLocked() == false)
{
//设置此列style为非锁定
style.setLocked(false);
//设置到新的单元格上
cell.setCellStyle(style);
}
//否则样式为锁定
else
{
//设置此列style为锁定
style.setLocked(true);
//设置到新单元格上
cell.setCellStyle(style);
}
//设置编码
cell.setEncoding(HSSFCell.ENCODING_UTF_16);
//Debug.println("dataValue : " + dataValue);
//设置值 统一为String
cell.setCellValue(dataValue);
}
}
//设置输入流
FileOutputStream fOut = new FileOutputStream(outputFile);
//将模板的内容写到输出文件上
templatewb.write(fOut);
fOut.flush();

//操作结束,关闭文件
fOut.close();

}

热心网友 时间:2023-10-09 19:36

wile 循环

热心网友 时间:2023-10-09 19:37

取excel 的列做循环即可。

热心网友 时间:2023-10-09 19:37

可以考虑用反射机制 或者 用现成的Apache Common BeanUtil来拷贝
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
现在厨师一个月工资是多少,炒菜和配菜,在什 成都厨房工资多少钱一个月 现在厨师一个月工资是多少,炒菜和配菜,在什么地方的价格,请详细点,谢 ... 华硕电脑上没有触摸板设置华硕笔记本电脑触摸板怎么开启 新买的光碟DVD-R是空白的,我想把他制作成一个系统光碟,谁知道怎么制 ... 请问空白光盘刻录车载DVD后,播放时只有目录放不出来是怎么回事啊?_百 ... 请问将一张DVD-R空白光盘作为数据盘使用能够重复写入或者续写数据吗?谢 ... 我现在有DVD-R盘,怎样刻录?一定需要刻录机吗? 做辣椒酱为什么要放酒 做辣椒酱为啥要放酒 2024年区块链的趋势和方向 哥们,问个poi的问题,我现在想把一个sheet页插到另一个excel文件中,用clonesheet方法能实现吗 poi操作excel表格 poi导出设置indirect(H3)导出excel之后,对该单元格进行复制或者向下拉动复制,(H3)为什么不变? java POI怎样复制Sheet页 JAVA中用POI生成excel表A之后,再用POI读取表A,会少一列,但是复制A表后再粘贴后命名为B,读取B表正常? 1)poi 如何将一个excel中的线条自选图形复制到另一个excel的sheet页中。 最好使用java实现。 如何通过poi来复制excel的区域内容? 请教高手,用apache的POI如何实现EXCEL中多行的复制 poi中把一个sheet移到另一个workbook中 怎么实现? poi 复制带公式单元格 poi 复制带公式的cell,怎么把公式对应的参数设置好 java poi操作xlsx文件,如何在原xlsx上进行某一行的复制到当前xlsx的新增行,内容和样式和原行保持不变 使用java poi 如何复制sheet1 里的第3行到第10行全部内容到sheet2 POI操作Excel如何禁止Excel中的复制和选定? 我的笔记本摄像头时好时坏,咋回事? 家用常用保健药酒配方 新买的盆上面有标签,怎么把胶去掉呢 求老年人养生(身)药酒配方 跌打药酒秘方 新买的盆子里面贴有不干胶,怎么洗掉 微信分身怎么合并一起(去掉一个) 微信分身和微信是同一个吗 一个能不能分身到另一个手机上? 熊国鸣的介绍 熊国鸣的简介 熊国鸣的运动生涯 熊国鸣的个人荣誉 熊国鸣的禁药风波 有谁还记得94年广岛亚运会的熊国鸣们的? 世界有哪些因禁药而被取消金牌的运动员? 关于94年,中国在游泳世锦赛夺12金的疑问? 求科普,90年代中国游泳队嗑药是怎么回事 一起25年前的丑闻,让孙杨成了“背锅侠”,是何丑闻? 熊国鸣 蒋丞稷 曾启亮 三人中哪位在奥运会上创造了中国男选手的最好成绩? 曼谷亚运会女子游泳项目所有冠军名单(中外) 中国奥运代表团用过多少次兴奋剂。那个国家用过的次数最多 中国体育界有没有龌龊的事 1994年世界游泳锦标赛中国队服用禁药了吗? 据说一起25年前的丑闻,让孙杨成了最大“背锅侠”,究竟是何丑闻? 能不能帮忙找一些精神药品滥用的案例,有用