最近在开发过程中,遇到java读取excel模板并写入数据,其中数据有计算求和的操作,一开始没有实现导出自动计算公式,所以费了一遍事,后台又重新做了一次数据计算,总感觉这样不是很好,所以上网找资料,终于在同事的帮助下实现了这一功能,分享出来,希望自己或看到的人可以受用。
String realPath= request.getSession().getServletContext().getRealPath("/WEB-INF/templetefile");
File templeteFile = new File(realPath + "/examNotice.xlsx");
InputStream fis = new FileInputStream(templeteFile);
XSSFWorkbook wb = new XSSFWorkbook(fis);
XSSFSheet st = wb.getSheetAt(0);
XSSFCell cell = null;
String[] rowName = {"LEVEL_5","LEVEL_4","LEVEL_3"};
for(int i=9;i<12;i++){
int k = 1;
for (Map.Entry<String, Object> entry : result.entrySet()) {
Map map = (Map)entry.getValue();
cell = st.getRow(i).getCell(k);
cell.setCellType(XSSFCell.CELL_TYPE_NUMERIC);//设置单位格类型
cell.se
String realPath= request.getSession().getServletContext().getRealPath("/WEB-INF/templetefile");
File templeteFile = new File(realPath + "/examNotice.xlsx");
InputStream fis = new FileInputStream(templeteFile);
XSSFWorkbook wb = new XSSFWorkbook(fis);
XSSFSheet st = wb.getSheetAt(0);
XSSFCell cell = null;
String[] rowName = {"LEVEL_5","LEVEL_4","LEVEL_3"};
for(int i=9;i<12;i++){
int k = 1;
for (Map.Entry<String, Object> entry : result.entrySet()) {
Map map = (Map)entry.getValue();
cell = st.getRow(i).getCell(k);
cell.setCellType(XSSFCell.CELL_TYPE_NUMERIC);//设置单位格类型
cell.se