/** * 版权所有(C) 2016 * @author www.xiongge.club * @date 2016-12-7 上午10:03:29 */ package xlsx; /** * @ClassName: CreateExcel * @Description: TODO() * @author www.xiongge.club * @date 2016-12-7 上午10:03:29 * */ import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; import java.io.InputStream; import org.apache.poi.hssf.usermodel.HSSFCell; import org.apache.poi.hssf.usermodel.HSSFSheet; import org.apache.poi.hssf.usermodel.HSSFWorkbook; import org.apache.poi.poifs.filesystem.POIFSFileSystem; import org.apache.poi.xssf.usermodel.XSSFCell; import org.apache.poi.xssf.usermodel.XSSFSheet; import org.apache.poi.xssf.usermodel.XSSFWorkbook; /** * @author Gerrard * @Discreption 根据已有的Excel模板,修改模板内容生成新Excel */ public class CreateExcel { /** * *(2003 xls后缀 导出) * @param TODO * @return void 返回类型 * @author xsw * @2016-12-7上午10:44:00 */ public static void createXLS() throws IOException{ //excel模板路径 File fi=new File("D:\\offer_template.xls"); POIFSFileSystem fs = new POIFSFileSystem(new FileInputStream(fi)); //读取excel模板 HSSFWorkbook wb = new HSSFWorkbook(fs); //读取了模板内所有sheet内容 HSSFSheet sheet = wb.getSheetAt(0); //如果这行没有了,整个公式都不会有自动计算的效果的 sheet.setForceFormulaRecalculation(true); //在相应的单元格进行赋值 HSSFCell cell = sheet.getRow(11).getCell(6);//第11行 第6列 cell.setCellValue(1); HSSFCell cell2 = sheet.getRow(11).getCell(7); cell2.setCellValue(2); sheet.getRow(12).getCell(6).setCellValue(12); sheet.getRow(12).getCell(7).setCellValue(12); //修改模板内容导出新模板 FileOutputStream out = new FileOutputStream("D:/export.xls"); wb.write(out); out.close(); } /** * *(2007 xlsx后缀 导出) * @param TODO * @return void 返回类型 * @author xsw * @2016-12-7上午10:44:30 */ public static void createXLSX() throws IOException{ //excel模板路径 File fi=new File("D:\\offer_template.xlsx"); InputStream in = new FileInputStream(fi); //读取excel模板 XSSFWorkbook wb = new XSSFWorkbook(in); //读取了模板内所有sheet内容 XSSFSheet sheet = wb.getSheetAt(0); //如果这行没有了,整个公式都不会有自动计算的效果的 sheet.setForceFormulaRecalculation(true); //在相应的单元格进行赋值 XSSFCell cell = sheet.getRow(11).getCell(6);//第11行 第6列 cell.setCellValue(1); XSSFCell cell2 = sheet.getRow(11).getCell(7); cell2.setCellValue(2); sheet.getRow(12).getCell(6).setCellValue(12); sheet.getRow(12).getCell(7).setCellValue(12); //修改模板内容导出新模板 FileOutputStream out = new FileOutputStream("D:/export.xlsx"); wb.write(out); out.close(); } public static void main(String[] args) throws IOException { //excle 2003 createXLS(); //excle 2007 createXLSX(); } }
poi读取excel模板,填充内容并导出,支持导出2007支持公式自动计算
猜你喜欢
转载自blog.csdn.net/u014727260/article/details/78248824
今日推荐
周排行