1 2 3 4

JAVA生成EXCEL

import java.io.FileOutputStream;
import java.util.ArrayList;
import java.util.List;

import org.apache.poi.hssf.usermodel.HSSFCell;
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.ss.util.CellRangeAddress;

public class ExcelUtils {
        /**
         * 在指定文件目录生成Excel
         * @param firstRowName Excel第一行的总标题
         * @param titils 每一列的标题
         * @param data 数据
         * @param path 存放路径
         * @param excelName Excel文件名称
         * @throws Exception
         */
        public static void createExcel(String firstRowName,List<String> titils,List<List<String>> data,String path) throws Exception {
            //创建HSSFWorkbook对象(excel的文档对象)
            HSSFWorkbook wb = new HSSFWorkbook();
            //建立新的sheet对象(excel的表单)
            HSSFSheet sheet = wb.createSheet("sheet1");
            //在sheet里创建第一行,参数为行索引(excel的行),可以是0~65535之间的任何一个
            HSSFRow row1 = sheet.createRow(0);
            //创建单元格(excel的单元格,参数为列索引,可以是0~255之间的任何一个
            HSSFCell cell = row1.createCell(0);
            //设置单元格内容
            cell.setCellValue(firstRowName);
            //合并单元格CellRangeAddress构造参数依次表示起始行,截至行,起始列, 截至列
            sheet.addMergedRegion(new CellRangeAddress(0,0,0,titils.size()-1));
            //在sheet里创建第二行(标题栏)
            HSSFRow row2 = sheet.createRow(1);
            for (int i = 0; i < titils.size(); i++) {
                row2.createCell(i).setCellValue(titils.get(i));
            }
            
            for (int i = 0; i < data.size(); i++) {
                HSSFRow datarow = sheet.createRow(i+2);
                for (int j = 0; j < data.get(i).size(); j++) {
                    datarow.createCell(j).setCellValue(data.get(i).get(j));
                }
            }

            FileOutputStream output=new FileOutputStream(path);
            wb.write(output);//写入磁盘
            output.close();

            }
        
        
        
        //测试
        public static void main(String[] args) throws Exception {
            List<String> titils = new ArrayList<String>();
            titils.add("名称");
            titils.add("大小");
            titils.add("重量");
            titils.add("体重");
            titils.add("长度");
            titils.add("宽度");
            
            List<List<String>> data = new ArrayList<List<String>>();
            for (int i = 0; i < 10; i++) {
                List<String> da = new ArrayList<String>();
                da.add("21121");
                da.add("12");
                da.add("212");
                da.add("1212");
                da.add("212");
                da.add("1212");
                data.add(da);
            }
            
            
            createExcel("111", titils, data, "F:/aaaaaaaa.xlsx");
        }
}

 

posted @ 2020-06-19 10:57  枫雨沉恋  阅读(477)  评论(0)    收藏  举报