通过java代码将数据导出到Excel

    科技2024-11-25  39

    public void WriteXLSX() throws IOException { //等效于在内存中创建Excel文件 Workbook workbook = new XSSFWorkbook(); //创建一个名为myshhet的工作簿 Sheet sheet = workbook.createSheet("mySheet"); //在这个工作簿里面创建第一行 Row row = sheet.createRow(0); //在第一行创建第一列 Cell cell = row.createCell(0); //调用set方法为第一行第一列写数据 cell.setCellValue("测试成功"); //准备将内存中的数据保存到磁盘中 File file = new File("Write.xlsx"); //调用特有的方法写入磁盘 workbook.write(new FileOutputStream(file)); workbook.close(); }

    通过上图一个简单的例子可以大概看出整个导出的流程,整个流程可以用我们自己手动创建Excel文件来联想记忆,首先创建一个XSSFWorkbook();对象,用Workbook接口来接收.相当于第一步创建Excel文件,文件名暂时不管,因为这时候文件时在内存中被创建. 然后我要在这个Excel文件中有一个工作簿才能进行数据的写入,也就是第二步.有了工作簿之后我就开始写入数据,这里我简单的再第一行第一列写入一个测试数据,创建行列时索引从0开始,这里不做过多解释,数据写入完成后要把文件从内存中写到磁盘上,很容易想到用IO流来操作.于是调用workbook.write()方法来传入一个本地的输出流来把数据写到磁盘上.这里默认写到模块下面.

    下面介绍一下从Excel读取数据的方法,和写入数据大同小异

    public void ReadXLSX() throws IOException { //根据文件名把数据读入内存 Workbook workbook = new XSSFWorkbook("Write.xlsx"); //可以根据工作簿名称或者索引来指定工作簿,这里我用索引拿到第一个工作簿 Sheet sheet = workbook.getSheetAt(0); //写数据是create,自然读数据就是get,拿到第一行 Row row = sheet.getRow(0); //拿到第一列 Cell cell = row.getCell(0); //这里要说一下拿数据是根据具体的数据类型来拿的,我这里要拿字符串所以调用字符串对应的方法 String str = cell.getStringCellValue(); System.out.println(str); workbook.close(); }

    读写数据都很简单,主要是表单样式的制作太麻烦.大家可以自己多尝试里面的方法

    Processed: 0.010, SQL: 8