JXL读写Excel表格数据

工作中常常需要将查询或者计算的结果导出到excel中,方便统计和查看,或者从excel中读取内容。除了原来使用的poi,还有一种轻量高效的方法就是使用jxl,下面看看jxl的使用。

导入依赖:

<!-- https://mvnrepository.com/artifact/jexcelapi/jxl -->
        <dependency>
            <groupId>jexcelapi</groupId>
            <artifactId>jxl</artifactId>
            <version>2.6</version>
        </dependency>

Show Code


import jxl.Cell;
import jxl.Sheet;
import jxl.Workbook;
import jxl.write.Label;
import jxl.write.WritableSheet;
import jxl.write.WritableWorkbook;

import java.io.File;

public class TestJxl {
    public static void main(String[] args) throws Exception{
        //写excel
        writeExcel();

        //读excel
        //readExcel();
    }

    /**
     * 写数据到excel中
     *
     * @throws Exception
     */
    private static void writeExcel() throws Exception {

        File xlsFile = new File("test.xls");
        // 创建一个工作簿
        WritableWorkbook workbook = Workbook.createWorkbook(xlsFile);
        // 创建一个工作表
        WritableSheet sheet = workbook.createSheet("sheet1", 0);
        // 向行和列中写数据
        for (int row = 0; row < 10; row++) {
            for (int col = 0; col < 10; col++) {
                // 向工作表中添加数据
                sheet.addCell(new Label(col, row, "data[" + row + ":" + col + "]"));
            }
        }
        //关闭资源
        workbook.write();
        workbook.close();
    }

    /**
     * 从excel中读取数据
     * @throws Exception
     */
    private static void readExcel() throws Exception {
        File xlsFile = new File("test.xls");
        // 获得工作簿对象
        Workbook workbook = Workbook.getWorkbook(xlsFile);
        // 获得所有工作表
        Sheet[] sheets = workbook.getSheets();
        // 遍历工作表
        if (sheets != null) {
            for (Sheet sheet : sheets) {
                // 获得行数
                int rows = sheet.getRows();
                // 获得列数
                int cols = sheet.getColumns();
                // 读取数据
                for (int row = 0; row < rows; row++) {
                    for (int col = 0; col < cols; col++) {
                        Cell cell = sheet.getCell(col, row);
                        System.out.print(cell.getContents() + " ");
                    }
                    System.out.println();
                }
            }
        }
        //关闭资源
        workbook.close();
    }
}

写入效果

JXL读写Excel表格数据

读取效果

JXL读写Excel表格数据

猜你喜欢

转载自blog.51cto.com/simplelife/2445192