需要用到的jar包
jxl.jar
对jxl写的操作
public void myWrite()throws Exception{
//创建一个文件
File file=new File("D:\\test.xls");
//创建一个工作簿
WritableWorkbook workbook=Workbook.createWorkbook(file);
//在工作簿里面创建一个工作表
WritableSheet sheet=workbook.createSheet("工作表1", 0);
//创建一个单元格(列,行,内容)
Label lable=new Label(0,0,"标题");
//获取"格式化单元格"对象,用来设置样式
WritableCellFormat cellFormat=new WritableCellFormat();
//设置单元格居中
cellFormat.setAlignment(Alignment.CENTRE);
//创建一个单元格(列,行,内容,样式)
jxl.write.Number lable2=new jxl.write.Number(1,0,1,cellFormat);
//创建一个单元格(列,行,内容)
DateTime lable3=new DateTime(2,0,new SimpleDateFormat("yyyy-MM-dd").parse("2017-5-5"));
//创建一个单元格(列,行,内容)
DateTime lable4=new DateTime(3,0,new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").parse("2017-5-5 20:2:2"));
//把单元格添加到工作表里面
sheet.addCell(lable);
sheet.addCell(lable2);
sheet.addCell(lable3);
sheet.addCell(lable4);
//写入
workbook.write();
//关闭
workbook.close();
}
对excel进行读的操作
public void myRead()throws Exception{
// TODO Auto-generated method stub
//获取一个文件
File file=new File("D:\\test.xls");
//获取工作簿
Workbook w=Workbook.getWorkbook(file);
//获取工作簿里面的工作表
Sheet s=w.getSheet(0);
//循环行
for(int i=0;i<s.getRows();i++){
//循环列
for (int j = 0; j < s.getColumns(); j++) {
//获取工作表里面的第j列第i行的单元格
Cell c=s.getCell(j,i);
System.out.println("第"+c.getRow()+"行,第"+c.getColumn()+"列");
//获取单元格里面的内容并打印
System.out.println(c.getContents());
}
}
w.close();
}
修改文件
public static void staticUpdateExcel(){
try {
//获得文件
Workbook wb = Workbook.getWorkbook(new File ("C:\\软件\\Test.xls"));
//打开一个文件的副本,并且指定数据写回到原文件
WritableWorkbook book = Workbook.createWorkbook(new File ("C:\\软件\\Test.xls"), wb);
//获取第一个工作表
WritableSheet sheet = book.getSheet(0);
//添加一个内容到单元格
sheet.addCell(new Label(0,0,"Test data for sheet_two"));
book.write();
book.close();
}catch (Exception e){
e.printStackTrace();
}
}