欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

JAVA读取Excel2003、2007、2010

程序员文章站 2022-07-13 12:39:03
...

1.代码

import java.io.File;
import java.io.FileInputStream;
import org.apache.poi.ss.usermodel.Row;
import org.apache.poi.ss.usermodel.Sheet;
import org.apache.poi.ss.usermodel.Workbook;
import org.apache.poi.ss.usermodel.WorkbookFactory;

public class TestExcel {
    public static void main(String[] args) {
        try {
            File file = new File("C://Users/Administrator/Desktop/test.xls");
            FileInputStream is = new FileInputStream(file);

            Workbook workbook = WorkbookFactory.create(is);//这种方式 Excel 2003/2007/2010 都是可以处理
            Sheet sheet = workbook.getSheetAt(0);//第一个sheet
            int rowCount = sheet.getPhysicalNumberOfRows();//获取总行数  
            Row row1 = sheet.getRow(0);//获取第一行 ,判断excel是否规范
            if(!row1.getCell(0).toString().trim().equals("序号")||
                    !row1.getCell(1).toString().trim().equals("评价年度")||
                    !row1.getCell(2).toString().trim().equals("纳税人识别号")||
                    !row1.getCell(3).toString().trim().equals("纳税人名称")||
                    !row1.getCell(4).toString().trim().equals("评价结果")){
                return;
            }
            for(int i=1;i<rowCount;i++){
                Row row = sheet.getRow(i);  
                int cellCount = row.getPhysicalNumberOfCells(); //获取总列数 
                String xh = "";//序号
                String pjnd = "";//评价年度
                String nsrsbh = "";//纳税人识别号
                String nsrmc = "";//纳税人名称
                String pjjg = "";//评价结果
                for(int c=0;c<cellCount;c++){
                    String cellStr = row.getCell(c).toString().trim();
                    if(!cellStr.equals("")&&cellStr!=null){
                        if(c==0) xh=cellStr;
                        if(c==1) pjnd=cellStr;
                        if(c==2) nsrsbh=cellStr;
                        if(c==3) nsrmc=cellStr;
                        if(c==4) pjjg=cellStr;
                    }
                }
                System.out.println(xh+"|"+pjnd+"|"+nsrsbh+"|"+nsrmc+"|"+pjjg);//拿到数据进行数据库操作
            }
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}

2.相关jar包下载

下载地址:http://pan.baidu.com/s/1nvhX3N7