POI读取所有行数和列数的数据方法 - 轻尘如风 - 博客园

复制代码; "复制代码")

1 XSSFWorkbook wb = new XSSFWorkbook(new FileInputStream(filePath)); 2
3 //获得该工作区的第一个sheet
4 XSSFSheet sheet = wb.getSheetAt(0);
5
6 List<Device> deviceList = new ArrayList<Device>();
7
8 //遍历所有行
9 for (Row row:sheet) { 10 if(row == null){ 11 continue; 12 } 13 //遍历行中所有的单元格
14 for (Cell cell:row) { 15 //单元格的参照 ,根据行和列确定某一个单元格的位置
16 CellReference cellRef = new CellReference(row.getRowNum(), cell.getColumnIndex()); 17 //打印单元格的位置
18 System.out.print(cellRef.formatAsString()); 19 //输出分隔符
20 System.out.print(" - "); 21 //转换数据类型
22 String rfidCode = getCellTypes(cell); 23
24 //你需要实现的功能代码
25 } 26 } 27
28
29 //判断Excel导入的数据类型,转换成数据库可识别的数据类型
30 private String getCellTypes(Cell cell) { 31 String cellValue = null; 32 if (null != cell) { 33 // 以下是判断数据的类型
34 switch (cell.getCellType()){ 35 case HSSFCell.CELL_TYPE_NUMERIC: // 数字 36 // 处理日期格式、时间格式
37 if (HSSFDateUtil.isCellDateFormatted(cell)) { 38 Date d = cell.getDateCellValue(); 39 DateFormat formater = new SimpleDateFormat("yyyy-MM-dd"); 40 cellValue = formater.format(d); 41 } 42 else{ 43 cellValue = cell.getNumericCellValue() + ""; 44 } 45
46
47 break; 48
49 case HSSFCell.CELL_TYPE_STRING: // 字符串
50 cellValue = cell.getStringCellValue(); 51 break; 52
53 case HSSFCell.CELL_TYPE_BOOLEAN: // Boolean
54 cellValue = cell.getBooleanCellValue() + ""; 55 break; 56
57 case HSSFCell.CELL_TYPE_FORMULA: // 公式 58 // cellValue = cell.getCellFormula() + "";
59 try { 60 DecimalFormat df = new DecimalFormat("0.0000"); 61 cellValue = String.valueOf(df.format(cell.getNumericCellValue())); 62
63 } catch (IllegalStateException e) { 64 cellValue = String.valueOf(cell.getRichStringCellValue()); 65 } 66 break; 67
68 case HSSFCell.CELL_TYPE_BLANK: // 空值
69 cellValue = ""; 70 break; 71
72 case HSSFCell.CELL_TYPE_ERROR: // 故障
73 cellValue = "非法字符"; 74 break; 75
76 default: 77 cellValue = "未知类型"; 78 break; 79 } 80 } 81 return cellValue; 82 }

复制代码; "复制代码")

另外关于附上SSM导入Excel的链接地址:http://www.jianshu.com/p/1487c0e049db

不懂的可以参考!欢迎各位评论


原网址: 访问
创建于: 2021-08-24 12:03:04
目录: default
标签: 无

请先后发表评论
  • 最新评论
  • 总共0条评论