java poi技术操作excel之写Excel(向Excel中写入值)
来源:互联网 发布:美辰堂燕窝是假货 知乎 编辑:程序博客网 时间:2024/05/17 15:41
写值到Excel:
import java.io.File;import java.io.FileInputStream;import java.io.FileOutputStream;import java.io.IOException;import java.io.OutputStream;import java.util.List;import java.util.Map;import org.apache.poi.hssf.usermodel.HSSFWorkbook;import org.apache.poi.ss.usermodel.Cell;import org.apache.poi.ss.usermodel.Row;import org.apache.poi.ss.usermodel.Sheet;import org.apache.poi.ss.usermodel.Workbook;import org.apache.poi.xssf.usermodel.XSSFWorkbook;public class WriteExcel {private static final String EXCEL_XLS = "xls";private static final String EXCEL_XLSX = "xlsx";public static void writeExcel(List<Map> dataList, int cloumnCount,String finalXlsxPath){OutputStream out = null;try {// 获取总列数int columnNumCount = cloumnCount;// 读取Excel文档File finalXlsxFile = new File(finalXlsxPath);Workbook workBook = getWorkbok(finalXlsxFile);// sheet 对应一个工作页Sheet sheet = workBook.getSheetAt(0);/** * 删除原有数据,除了属性列 */int rowNumber = sheet.getLastRowNum();// 第一行从0开始算System.out.println("原始数据总行数,除属性列:" + rowNumber);for (int i = 1; i <= rowNumber; i++) {Row row = sheet.getRow(i);sheet.removeRow(row);}// 创建文件输出流,输出电子表格:这个必须有,否则你在sheet上做的任何操作都不会有效out = new FileOutputStream(finalXlsxPath);workBook.write(out);/** * 往Excel中写新数据 */for (int j = 0; j < dataList.size(); j++) { // 创建一行:从第二行开始,跳过属性列 Row row = sheet.createRow(j + 1); // 得到要插入的每一条记录 Map dataMap = dataList.get(j); String name = dataMap.get("BankName").toString(); String address = dataMap.get("Addr").toString(); String phone = dataMap.get("Phone").toString(); for (int k = 0; k <= columnNumCount; k++) {// 在一行内循环Cell first = row.createCell(0);first.setCellValue(name);Cell second = row.createCell(1);second.setCellValue(address);Cell third = row.createCell(2);third.setCellValue(phone); }}// 创建文件输出流,准备输出电子表格:这个必须有,否则你在sheet上做的任何操作都不会有效out = new FileOutputStream(finalXlsxPath);workBook.write(out);} catch (Exception e) {e.printStackTrace();} finally{try {if(out != null){out.flush();out.close();}} catch (IOException e) {e.printStackTrace();}}System.out.println("数据导出成功");}/** * 判断Excel的版本,获取Workbook * @param in * @param filename * @return * @throws IOException */public static Workbook getWorkbok(File file) throws IOException{Workbook wb = null;FileInputStream in = new FileInputStream(file);if(file.getName().endsWith(EXCEL_XLS)){ //Excel 2003wb = new HSSFWorkbook(in);}else if(file.getName().endsWith(EXCEL_XLSX)){// Excel 2007/2010wb = new XSSFWorkbook(in);}return wb;}}
java poi技术操作excel之读取Excel:点击打开链接
需要使用的Poi jar包下载地址:poi 3.15下载地址
0 0
- java poi技术操作excel之写Excel(向Excel中写入值)
- java poi技术操作excel之读取Excel
- java poi技术操作excel之读取Excel
- Java POI 写入Excel
- Java POI 写入Excel
- Java POI 写入Excel
- Java POI 写入Excel
- java操作excel之poi读取excel
- Java操作Excel之Poi
- 使用POI操作Excel,读取、写入Excel
- POI操作Excel,读取,写入
- Java poi技术写Excel的Sheet
- java使用poi操作excel(读、写)
- java利用poi写入Excel
- Java向Excel中写入图表
- 用POI向Excel中写入多张图片
- POI使用案例02---向excel中写入数据
- Java操作Excel Poi
- Java实现反转链表
- linux查看java jdk安装路径和设置环境变量
- 【杭电】[1257]最少拦截系统
- Java获取当前路径
- qt写DLL文件并调用和出现的问题分析
- java poi技术操作excel之写Excel(向Excel中写入值)
- poj1797&poj2263 dijkstra()贪心解瓶颈路问题2
- strlen的坑
- 多文件上传中重名文件问题,日期转特殊字符串
- 连接你的APP至WiFi设备(Connecting your App to a Wi-Fi Device)
- Android ListView子item高度定长固定值无效问题
- Android开发之Android studio单元测试简介
- 类中的静态成员变量和静态成员函数
- 号段申请逻辑分析booknumbercontroller.java