ExcelPOI

    技术2022-06-30  118

     /**  * Excel工作簿内容  *   * @param filePath  *            Excel文件路径  * @param index  *            第一张工作表的索引是0  * @param beginRow  *            开始行  * @param count  *            行数  * @return  * @throws FileNotFoundException  * @throws IOException  */ public static List<String> getExcelValue(String filePath, int index,   int beginRow, int count) throws FileNotFoundException, IOException {  // 创建对Excel工作簿文件的引用  HSSFWorkbook workbook = new HSSFWorkbook(new FileInputStream(filePath));  // 在Excel文档中,第一张工作表的缺省索引是0  // 其语句为:  HSSFSheet sheet = workbook.getSheetAt(index);  // HSSFSheet sheet = workbook.getSheet("Sheet1");  // 获取到Excel文件中的所有行数  int rows = sheet.getPhysicalNumberOfRows();  List<String> objectList = new ArrayList<String>();  int endRow = beginRow+count;  if (beginRow > rows) {   return null;  }  if (endRow > rows) {   endRow = rows;  }  // 遍历行  for (int i = beginRow; i < endRow; i++) {   // 读取左上端单元格   HSSFRow row = sheet.getRow(i);   // 行不为空   if (row != null) {    // 获取到Excel文件中的所有的列    int cells = row.getPhysicalNumberOfCells();    String value = "";    // 遍历列    for (int j = 0; j < cells; j++) {     // 获取到列的值     HSSFCell cell = row.getCell(j);     if (cell != null) {      switch (cell.getCellType()) {      case HSSFCell.CELL_TYPE_FORMULA:       cell.setCellType(HSSFCell.CELL_TYPE_STRING);       value += cell.getStringCellValue() + ",";       break;      case HSSFCell.CELL_TYPE_NUMERIC:       cell.setCellType(HSSFCell.CELL_TYPE_STRING);       value += cell.getStringCellValue() + ",";       break;      case HSSFCell.CELL_TYPE_STRING:       value += cell.getStringCellValue() + ",";       break;      default:       value += "0";       break;      }     }    }    objectList.add(value);   }  }  return objectList; }


    最新回复(0)