JAVA读取Excel文件的科学计数类型的解决办法

JAVA读取Excel文件的科学计数类型的解决方法

JAVA读取Excel文件,一般用的是apathe的poi.jar,注意的是HSSFWorkbook 支持.xls格式;XSSFWorkbook 支持 .xlsx格式。

然后一般写法就是先把文件放到HSSFWorkbook里,在对他进行循环取数的操作。

取数的时候有几种情况,当取数遇到科学计数的时候,就会遇到取出的数格式如1.3853508356E10,不能直接插入到数据库,

这时候可以修改execl的格式,如果excel修改麻烦的话,就做如下的格式化处理可以解决此问题。

public String getHSSTextString(Row row, int colNum) {
		 	   
		Cell cell = row.getCell(colNum);
			if (null != cell) {
				switch (cell.getCellType()) {
				case HSSFCell.CELL_TYPE_NUMERIC:
					DecimalFormat df = new DecimalFormat("#");//转换成整型
					return	df.format(cell.getNumericCellValue());
					//return String.valueOf(cell.getNumericCellValue());
					   
				case HSSFCell.CELL_TYPE_STRING:
					return cell.getStringCellValue().trim();
				case HSSFCell.CELL_TYPE_BLANK: // 空值
					return "";
				case HSSFCell.CELL_TYPE_ERROR: // 故障
					return "";
				default:
					return "";
				}
			} else {
				return "";
			}
		}