java 生成excel文件例子

Excel excel1 = new Excel();//新建一个excel文件

List<StationObject> list = dao.getStation();//获取车站

excel.setWorkingSheet(0)//此处的0代表设置的是excel文件的第一个sheet

.sheetName("第一个sheet");//指定sheet的名字

//设置第一行的值

excel1.cell(0,0)//指定某个单元格 cell(row,column)行列

.value("沪宁线主要站OD客流密度按天平日:8字头“)//设置它的文本值

excel.region(0, 0,0, 10);//合并第一行10个单元格

//该sheet里表格的横表头和竖表头是相同的,且是有规律的,可以先设置整个表格的样式

//excel中行列的索引都是从0开始的,所以如图中,横表头是从索引为1的行开始,竖表头是从行索引为2开始的

for(int i=1;i<=list.size();i++){

   for(int i=0;i<=list.size();j++){

             excel1.cell(i, j) .align(Align.CENTER)//设置单元格的文本居中的
             .border(BorderStyle.THIN, Color.BLACK);//设置单元格的样式实线 为黑色

  }

}

//如果单独设置某一列的值可以直接设置

//如果要设置某一列的值

//excel1.column(0, 2).value(list);//column(col,startRow)是指某一个列值,放的是一个数组值,其中startRow是指从某一行开始

//excel1.column(0,0).autoWidth();//autoWidth()根据列的值内容宽度自动调节 这个方法只有excel的column对象有这个方法

//excel1.column(0,0).borderFull(BorderStyle.THIN, Color.BLACK);//设置整个列的单元格式

//单独设置某一行的值row(row, startCol) 之从某一行的某一列开始 row后面放值得话也是放数组格式 方法个列差不多

//excel1.row(1,1).value(list);//设置横表头的值

//获取表中的数据

list<odOjbect> od = dao.getObject();//od的行数与站的个数是一致的

//动态生成数据

for(int i=0;i<list.size){

        String station = list.get(i);

        excel1.cell(i+1,1).value(station);//放横表头的数据 cell是指定某行的某列的单元格

        excel1.cell(i+2,0).value(station);//放竖表头 它是从索引为2的行开始的

        for(int j=0;j<od.size();j++){

           odObject obj = od.get(j);

            if(station.equal(obj.getStation())){//找到对应的相同的一行

                //开始设置中间的数据  注意中间的数据是从索引为1的列开始的

                  excel.cell(2+i, 1+j).value(obj.getShuJu());

                 break;

             }

       }

}

excel1.saveExcel(path);//保存起来 path是 保存放置的路径 e:\test.xls

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Java生成Excel文件有多种方法,但是其中一种比较常用的方法是使用Apache POI库。以下是一些示例代码,演示如何使用Apache POI库创建和写入Excel文件。 1. 添加Apache POI库的依赖:在项目中添加Apache POI库的依赖,您可以使用Maven或手动下载并添加JAR文件。 2. 创建Excel文件和工作表: ```java import org.apache.poi.ss.usermodel.*; import org.apache.poi.xssf.usermodel.XSSFWorkbook; // 创建一个新的工作簿 Workbook workbook = new XSSFWorkbook(); // 创建一个新的工作表 Sheet sheet = workbook.createSheet("Sheet1"); ``` 3. 向Excel文件中写入数据: ```java // 创建一个行对象 Row headerRow = sheet.createRow(0); // 创建标题单元格并写入数据 Cell headerCell1 = headerRow.createCell(0); headerCell1.setCellValue("姓名"); Cell headerCell2 = headerRow.createCell(1); headerCell2.setCellValue("年龄"); Cell headerCell3 = headerRow.createCell(2); headerCell3.setCellValue("城市"); // 写入多行数据 Object[][] data = { {"张三", 20, "北京"}, {"李四", 25, "上海"}, {"王五", 30, "广州"} }; int rowNum = 1; for (Object[] row : data) { Row dataRow = sheet.createRow(rowNum++); int cellNum = 0; for (Object cellValue : row) { Cell cell = dataRow.createCell(cellNum++); if (cellValue instanceof String) { cell.setCellValue((String) cellValue); } else if (cellValue instanceof Integer) { cell.setCellValue((Integer) cellValue); } } } ``` 4. 保存Excel文件: ```java // 保存文件 FileOutputStream outputStream = new FileOutputStream("example.xlsx"); workbook.write(outputStream); workbook.close(); ``` 这个例子创建了一个名为“example.xlsx”的Excel文件,并在第一个工作表中写入数据。您可以根据需要调整代码,以满足您的需求。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值