import java.io.FileInputStream;
import java.io.InputStream;
import java.sql.Connection;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import jxl.Cell;
import jxl.CellType;
import jxl.NumberCell;
import jxl.Sheet;
import jxl.Workbook;
public class UploadExcel
{
private static ArrayList lst=new ArrayList();
//将数据保存在 HashMap中
private static ArrayList<Map<String,Object>> mlist=null;
//表名
private static String tableName;
//文件路径
private static String filepath;
/**
*读取表中的数据,并将数据存放到一个三位数组中
*
* **/
public static ArrayList<Map<String,Object>> readExcel(InputStream stream)
{
System.out.println("InputStream start: ");
mlist=new ArrayList<Map<String,Object>>();
try
{
Workbook rwb=Workbook.getWorkbook(stream);
Sheet st[]=rwb.getSheets();
System.out.println("表格个数: "+st.length);
for(int a=0;a<st.length;a++)
{
ArrayList alList=new ArrayList();
ArrayList tablenames=new ArrayList();
ArrayList tableAndContents=new ArrayList();
// System.out.println("=第"+(a+1)+"张表=");
tableName=st[a].getName().trim();
int b=0;
//tmonth
int tmonth=0;
//行
for(int i=1;i<st[a].getRows();i++)
{
Map mp=new HashMap();
if(st[a].getCell(0,i).getContents()==null || st[a].getCell(0,i).getContents().equals("")) break;
int columns=st[a].getColumns();
tmonth=0;
if(columns>5) columns=5;
// System.out.println(columns+" : "+st[a].getColumns());
for(int j=0;j<columns;j++)
{
if(st[a].getCell(j,i).getContents()==null || st[a].getCell(j,i).getContents().equals("")) break;
Cell cl=st[a].getCell(j, i);
String strcl=new String();
if (j == 0)
{
if (st[a].getCell(0, i).getType() == CellType.NUMBER)
{
NumberCell cd = (NumberCell) st[a].getCell(0, i);
strcl=ChangeUtil.getDateInfor(cd.getValue());
tmonth=ChangeUtil.getDate(cd.getValue());
}
else
{
break;
}
}
else
strcl=cl.getContents().trim();
strcl=ChangeUtil.change(strcl);
mp.put(array[j], strcl);
}
if(mp!=null && tmonth!=0){
mp.put(array[array.length-2],"IF"+tableName);
mp.put(array[array.length-1], tmonth);
mlist.add(mp);
System.out.println("hello: "+mlist);
}
}
}
rwb.close();
}
catch (Exception e)
{
// TODO Auto-generated catch block
e.printStackTrace();
}
return mlist;
}
public static List<Map<String,Object>>loadExcel(InputStream stream)
{
return readExcel(stream);
}
}
import java.io.InputStream;
import java.sql.Connection;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import jxl.Cell;
import jxl.CellType;
import jxl.NumberCell;
import jxl.Sheet;
import jxl.Workbook;
public class UploadExcel
{
private static ArrayList lst=new ArrayList();
//将数据保存在 HashMap中
private static ArrayList<Map<String,Object>> mlist=null;
//表名
private static String tableName;
//文件路径
private static String filepath;
/**
*读取表中的数据,并将数据存放到一个三位数组中
*
* **/
public static ArrayList<Map<String,Object>> readExcel(InputStream stream)
{
System.out.println("InputStream start: ");
mlist=new ArrayList<Map<String,Object>>();
try
{
Workbook rwb=Workbook.getWorkbook(stream);
Sheet st[]=rwb.getSheets();
System.out.println("表格个数: "+st.length);
for(int a=0;a<st.length;a++)
{
ArrayList alList=new ArrayList();
ArrayList tablenames=new ArrayList();
ArrayList tableAndContents=new ArrayList();
// System.out.println("=第"+(a+1)+"张表=");
tableName=st[a].getName().trim();
int b=0;
//tmonth
int tmonth=0;
//行
for(int i=1;i<st[a].getRows();i++)
{
Map mp=new HashMap();
if(st[a].getCell(0,i).getContents()==null || st[a].getCell(0,i).getContents().equals("")) break;
int columns=st[a].getColumns();
tmonth=0;
if(columns>5) columns=5;
// System.out.println(columns+" : "+st[a].getColumns());
for(int j=0;j<columns;j++)
{
if(st[a].getCell(j,i).getContents()==null || st[a].getCell(j,i).getContents().equals("")) break;
Cell cl=st[a].getCell(j, i);
String strcl=new String();
if (j == 0)
{
if (st[a].getCell(0, i).getType() == CellType.NUMBER)
{
NumberCell cd = (NumberCell) st[a].getCell(0, i);
strcl=ChangeUtil.getDateInfor(cd.getValue());
tmonth=ChangeUtil.getDate(cd.getValue());
}
else
{
break;
}
}
else
strcl=cl.getContents().trim();
strcl=ChangeUtil.change(strcl);
mp.put(array[j], strcl);
}
if(mp!=null && tmonth!=0){
mp.put(array[array.length-2],"IF"+tableName);
mp.put(array[array.length-1], tmonth);
mlist.add(mp);
System.out.println("hello: "+mlist);
}
}
}
rwb.close();
}
catch (Exception e)
{
// TODO Auto-generated catch block
e.printStackTrace();
}
return mlist;
}
public static List<Map<String,Object>>loadExcel(InputStream stream)
{
return readExcel(stream);
}
}