从excel表格中读取数据
int i=1;
Sheet sheet;
Workbook book;
Cell cell1,cell2;
try {
//in.xls为要读取的excel文件名
book= Workbook.getWorkbook(new File("E://in.xls"));
//获得第一个工作表对象(ecxel中sheet的编号从0开始,0,1,2,3,....)
sheet=book.getSheet(0);
//获取左上角的单元格
String content[]=new String[2000];//存放第5列的数据
String content1[]=new String[2000];//存放第8列的数据
while(true){
try
{
//获取每一行的单元格
cell1=sheet.getCell(4,i); //获取第i行第5列单元格的内容
cell2=sheet.getCell(7,i);//获取第i行第8列单元格的内容
String change_words= replaceBlank(cell1.getContents());//使用replaceBlank()方法去除第i行第5列单元格内容中的空格
String change_words1= replaceBlank(cell2.getContents());//使用replaceBlank()方法去除第i行第8列单元格内容中的空格
content[i]=change_words;//将处理后的数据放入数组中
content1[i]=change_words1;
if(i>=1999)
{//如果第i行没有数据,就中断当前执行程序,退出
break;
}
}
catch(Exception e)
{
e.printStackTrace();
}
i++;//累加,行数加一
}
//将处理后的数据写入到E盘下的1文件夹下的hell0.xls文件中
File file = new File("E://1//hello.xls");
//创建一个新的可写工作簿
WritableWorkbook wb = Workbook.createWorkbook(file);
//用TWrite中的write()方法将数据写入到Excel表格中
TWrite.write(wb,content);
// 写入Exel工作表
wb.write();
// 关闭Excel工作薄对象
wb.close();
book.close();
}
catch(Exception e) { }
2、数据处理
/*
* 去除数据的空格、回车、换行符、制表符
/
public static String replaceBlank(String str) {
String dest = "";
if (str!=null) {
//空格\t、回车\n、换行符\r、制表符\t
Pattern p = Pattern.compile("\s|\t|\r|\n");
Matcher m = p.matcher(str);
dest = m.replaceAll("");
}
return dest;
}
3、数据写入Excel
代码块
public static void write(WritableWorkbook wb,String str[]) throws WriteException {
WritableSheet wSheet = wb.createSheet("sheet1", 0);
for(int i=0;i<str.length;i++)
{
//添加Label对象
Label labelA = new Label(0, i, str[i]);
wSheet.addCell(labelA);
}
}
数据写入Excel
public static void write(WritableWorkbook wb,String str[]) throws WriteException {
WritableSheet wSheet = wb.createSheet("sheet1", 0);
for(int i=0;i<str.length;i++){
//添加Label对象
Label labelA = new Label(0, i, str[i]);
wSheet.addCell(labelA);
}
}