利用POI对Excel进行读写操作

package com.imooc.excel;

import org.apache.commons.io.FileUtils;

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 java.io.File;

import java.io.FileOutputStream;

import java.io.IOException;

/**

* @program: excel_poi

* @Author: Ms.Cao

* @Description:

* POI生成excel文件

* 创建excel写入数据

*/

public class PoiExpExcel {

public static void main(String[] args) {

//定义数组,excel的表头

        String[] title = {"id","name","sex"};

        //创建Excel工作簿

        HSSFWorkbook workbook =new HSSFWorkbook();

        //创建一个工作表sheet

        HSSFSheet sheet = workbook.createSheet();

        //创建第一行

        HSSFRow row = sheet.createRow(0);

        HSSFCell cell =null;

        //插入第一行数据,id,name,sex

        for (int i =0; i < title.length; i++) {

cell = row.createCell(i);

            cell.setCellValue(title[i]);

        }

//追加数据

        for (int i =1; i <=10; i++) {

HSSFRow nextrow = sheet.createRow(i);

            HSSFCell cell2 = nextrow.createCell(0);

            cell2.setCellValue("a" + i);

            cell2 = nextrow.createCell(1);

            cell2.setCellValue("user" + i);

            cell2 = nextrow.createCell(2);

            cell2.setCellValue("男");

        }

//创建文件

        File file =new File("E:\\poi_test.xls");

        try{

file.createNewFile();

            //将excel文件内容保存

            FileOutputStream stream = FileUtils.openOutputStream(file);

            //写入到此文件中

            workbook.write(stream);

            //关闭

            stream.close();

        }catch (IOException e){

e.printStackTrace();

        }

}

}



package com.imooc.excel;

import org.apache.commons.io.FileUtils;

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 java.io.File;

import java.io.IOException;

/**

* @program: excel_poi

* @Author: Ms.Cao

* @Description:

* POI解析excel文件(读取)

* 两种方式来读取工作表

*/

public class poiReadExcel {

public static void main(String[] args) {

//引入需要解析的excel文件

        File file =new File("E:\\poi_test.xls");

        try{

//创建Excel,读取文件内容

            HSSFWorkbook workbook =new HSSFWorkbook(FileUtils.openInputStream(file));

            //获取第一个工作表workbook.getSheet("sheet0");(方式一)

// HSSFSheet sheet = workbook.getSheet("Sheet0");

//读取默认第一个工作表sheet(方式二)

            HSSFSheet sheet = workbook.getSheetAt(0);

            //读取工作表中的数据

            int firstRowNum =0;

            //获取sheet中最后一行行号

            int lastRowNum = sheet.getLastRowNum();

            for (int i = firstRowNum; i <= lastRowNum; i++) {

HSSFRow row = sheet.getRow(i);

                //获取当前行最后单元格的列号

                int lastCellNum = row.getLastCellNum();

                for (int j =0; j < lastCellNum; j++) {

//读取cell

                    HSSFCell cell = row.getCell(j);

                    //定义value,读取值

                    String value= cell.getStringCellValue();

                    System.out.print(value +"  ");

                }

System.out.println();

            }

}catch (IOException e){

e.printStackTrace();

        }

}

}

小测试一枚,学习JAVA中,记录点滴。。。

你可能感兴趣的:(利用POI对Excel进行读写操作)