运行环境搭建:
JDK1.6.0
MyEclipse 6.5
Linux服务器
所需jar包:用积分到我的资源下载
java代码:
ReadExcel03Util.java
package com.rapoo.excelToDB;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStream;
import java.text.NumberFormat;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import jxl.Workbook;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.apache.poi.hssf.usermodel.HSSFCell;
import org.apache.poi.hssf.usermodel.HSSFDateUtil;
import org.apache.poi.hssf.usermodel.HSSFRow;
import org.apache.poi.hssf.usermodel.HSSFSheet;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.apache.poi.poifs.filesystem.POIFSFileSystem;
public class ReadExcel03Util{
HSSFWorkbook readbook;
HSSFSheet sheet;
String FormatDate;
Log log = LogFactory.getLog(this.getClass());
public ReadExcel03Util(String uploadFilePath) throws IOException
{
FileInputStream fis=new FileInputStream(uploadFilePath);
POIFSFileSystem pfs=new POIFSFileSystem(fis);
readbook=new HSSFWorkbook(pfs);
sheet=readbook.getSheetAt(0);
}
public HSSFWorkbook getReadbook() {
return readbook;
}
public void setReadbook(HSSFWorkbook readbook) {
this.readbook = readbook;
}
public HSSFSheet getSheet() {
return sheet;
}
public void setSheet(HSSFSheet sheet) {
this.sheet = sheet;
}
public List<List<String>> ItermCell(HSSFSheet sheet){
List<List<String>> str1 = new ArrayList<List<String>>();
lable:
// 遍历行Row
for(int rowNum=1;rowNum<=sheet.getLastRowNum();rowNum++){
log.info("总共的行数:"+sheet.getLastRowNum());
List<String> str2 = new ArrayList<String>();
HSSFRow hssfRow=sheet.getRow(rowNum);
if(hssfRow==null){
break lable;
}
// 遍历列Cell
for(int cellNum=0;cellNum<hssfRow.getLastCellNum();cellNum++){
String hssfCell = getCellValue(rowNum,cellNum);
log.info("hssfCell的值:======"+hssfCell);
str2.add(hssfCell);
}
str1.add(str2);
}
return str1;
}
public int getsheetLastRow(){
return sheet.getLastRowNum();
}
public String getCellValue(int row, int col) {
String value="";
if(sheet==null)return "";
HSSFRow hrow=sheet.getRow(row);
if(hrow==null)return "";
HSSFCell cell=hrow.getCell((short) col);
if(cell==null)
return "";
int type=cell.getCellType();
switch(type)
{
case HSSFCell.CELL_TYPE_NUMERIC:
if (HSSFDateUtil.isCellDateFormatted(cell)) {
Date date = cell.getDateCellValue();
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
value = sdf.format(date);
} else {
NumberFormat formatter = NumberFormat.getNumberInstance();
formatter.setMaximumFractionDigits(3);
String newD = formatter.format(
(Double) cell.getNumericCellValue()).toString()
.replace(",", "");
value = newD;
}
break;
case HSSFCell.CELL_TYPE_STRING: value=cell.getStringCellValue();break;
case HSSFCell.CELL_TYPE_FORMULA:value=cell.getStringCellValue();break;
case HSSFCell.CELL_TYPE_BOOLEAN:value=cell.getBooleanCellValue()+"";break;
case HSSFCell.CELL_TYPE_BLANK: value="";break;
default:value="";
}
return value.trim();
}
public int getRows()
{
if(sheet!=null)
</