今天第一次从Excel中读取指定数据,并存入HashMap。代码如下:
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.InputStream;
import java.util.HashMap;
import jxl.Cell;
import jxl.Sheet;
import jxl.Workbook;
import jxl.read.biff.BiffException;
public class QueryAnalysis {
/* 从标注的文件中读到哈希中
* */
public static HashMap readFile(String filename){
HashMaptagedData=new HashMap();
Workbook wb=null;
Cell cell=null;
StringBuffer sb=new StringBuffer();
try {
File f=new File(filename);
InputStream in=new FileInputStream(f); //创建输入流
wb=Workbook.getWorkbook(in); //获取Excel文件对象
Sheet s=wb.getSheet(0); //获取文件的指定工作表,默认为第一个
String key=null;
for(int i=1;i
for(int j=0;j
if(j==1){
cell=s.getCell(j, i);
key=cell.getContents();
}
if(j!=0&&j!=3){ //只要2、4、5、6列,1列为key
cell=s.getCell(j, i); //获取第i行,j列的值
sb.append(cell.getContents());
}
}
tagedData.put(key, sb.toString());
}
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (BiffException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return tagedData;
}
public static void main(String[] args) {
// TODO Auto-generated method stub
HashMaptagedData=readFile("D://input.xls");
System.out.println(tagedData.size());
}