Workbook wb = Workbook.getWorkbook(tempFile);
Sheet sheet = wb.getSheet(0);
int row = sheet.getRows();
if(row<=1){ //无数据
return -9999;
}
int cols= sheet.getColumns();
log.info("列数"+cols);
if(cols!=2){
return -10000;//数据格式不正确
}
String[] strCell = new String[cols];
for(int i=1;i<row;i++){
Cell[] Cell = sheet.getRow(i);
for(int j =0 ;j<cols;j++){
try{
strCell[j]= Cell[j].getContents().trim();
}catch(Exception e){
strCell[j]="";
}
}
sql = "insert into "+tempTable+" (msisdn,push_title,flag) values(?,?,1)";
batchSql.addBatch(sql, new Object[]{strCell[0],strCell[1]});
}
com.linuxense.javadbf.DBFReader reader = new com.linuxense.javadbf.DBFReader(
new FileInputStream(tempFile));
reader.setCharactersetName("GBK");
int recordRowCount = reader.getRecordCount();
int recordColCount = reader.getFieldCount();
if (recordRowCount == 0) {
return -9999;
}
if (recordColCount != 2) {
return -10000;
}
sql = "";
for (int i = 0; i < recordColCount; i++) {
int type = reader.getField(i).getDataType();
switch (type) {
case DBFField.FIELD_TYPE_N:
reader.getField(i).setDataType(DBFField.FIELD_TYPE_C);
break;
case DBFField.FIELD_TYPE_C:
reader.getField(i).setDataType(DBFField.FIELD_TYPE_C);
break;
case DBFField.FIELD_TYPE_F:
reader.getField(i).setDataType(DBFField.FIELD_TYPE_C);
break;
case DBFField.FIELD_TYPE_L:
reader.getField(i).setDataType(DBFField.FIELD_TYPE_C);
break;
case DBFField.FIELD_TYPE_D:
reader.getField(i).setDataType(DBFField.FIELD_TYPE_C);
break;
default:
recordColCount--;
break;
}
}
String[] strCell = new String[recordColCount];
for (int i = 0; i < recordRowCount; i++) {
Object[] objs = reader.nextRecord();
if (objs.length > 0) {
for (int j = 0; j < objs.length; j++) {
try {
strCell[j] = (objs[j] + "").trim().replace("'",
"");
} catch (Exception e) {
strCell[j] = "";
}
}
sql = "insert into " + tempTable
+ " (msisdn,push_title,flag) values(?,?,1)";
batchSql.addBatch(sql, new Object[] { strCell[0],
strCell[1] });
}