zoukankan      html  css  js  c++  java
  • Java POI读取excel 支持xls、xlsx

    import java.io.File;
    import java.io.FileInputStream;
    import java.util.List;
     
    import org.apache.poi.hssf.usermodel.HSSFPicture;
    import org.apache.poi.hssf.usermodel.HSSFPictureData;
    import org.apache.poi.hssf.usermodel.HSSFShape;
    import org.apache.poi.hssf.usermodel.HSSFSheet;
    import org.apache.poi.hssf.usermodel.HSSFWorkbook;
    import org.apache.poi.ss.usermodel.Cell;
    import org.apache.poi.ss.usermodel.DateUtil;
    import org.apache.poi.ss.usermodel.Row;
     
    public final class TestImportExcel {
     
        public static void main(String[] args) throws Exception  {
     
            File excelFile = new File("test.xls");
            HSSFWorkbook wb = new HSSFWorkbook(new FileInputStream(excelFile));
            HSSFSheet sheet = wb.getSheetAt(0);
     
            for (Row row : sheet) {
                for (Cell cell : row) {
                    switch (cell.getCellType()) {
                    case Cell.CELL_TYPE_STRING:
                        System.out.print(cell.getRichStringCellValue().getString());
                        break;
                    case Cell.CELL_TYPE_NUMERIC:
                        if (DateUtil.isCellDateFormatted(cell)) {
                            System.out.print(String.valueOf(cell.getDateCellValue()));
                        } else {
                            System.out.print(cell.getNumericCellValue());
                        }
                        break;
                    case Cell.CELL_TYPE_BOOLEAN:
                        System.out.print(cell.getBooleanCellValue());
                        break;
                    default:
                    }
                }
                System.out.println();
            }
             
            //读取图片
            List<HSSFPictureData> pictures = wb.getAllPictures();  
            for (HSSFShape shape : sheet.getDrawingPatriarch().getChildren()) {  
                if (shape instanceof HSSFPicture) {
                    HSSFPicture pic = (HSSFPicture) shape;  
                    int pictureIndex = pic.getPictureIndex()-1;  
                    HSSFPictureData picData = pictures.get(pictureIndex);
                    System.out.println("image-size:" + picData.getData().length);
                }  
            }  
             
            System.out.println(wb.getSheetName(0));
        }
    }
    
  • 相关阅读:
    零售行业解决方案一
    N-Tier Entity Framework开源项目介绍
    软件代码生成之Codesmith模板.netTiers
    ActiveMQ消息队列介绍
    EntityFramework动态多条件查询与Lambda表达式树
    GitLab版本管理
    REST服务介绍
    2014年物联网Internet of Things应用简介
    wordpress如何屏蔽wp-json(禁用REST API)
    bootstrap tab切换如何让鼠标移动自动切换内容
  • 原文地址:https://www.cnblogs.com/sunBinary/p/12035954.html
Copyright © 2011-2022 走看看