用jxl包向指定的excel模板中写入数据

package me.chyxion.xls;
import java.io.File;
import jxl.Workbook;
import jxl.write.Blank;
import jxl.write.Label;
import jxl.write.WritableCell;
import jxl.write.WritableCellFormat;
import jxl.write.WritableSheet;
import jxl.write.WritableWorkbook;
public class WriteToExcelTable {
@SuppressWarnings("unused")
public static void main(String arg[]) {
//创建一个可写的工作薄对象
WritableWorkbook wwb = null;
try {
//已有的excel模板对象(可修改路劲)
File file1 = new File("D:/1.xls");
//即将创建的新的xls对象(可修改路径)
File file2 = new File("D:/2.xls");
//根据已有的工作薄创建一个可写的工作薄(可写模板,相当于复制了一份新的)
wwb = Workbook.createWorkbook(file2, Workbook.getWorkbook(file1));
//获取一个sheet
WritableSheet ws = wwb.getSheet(0);
String a = "nihaoma";
//方法一:创建新的单元格替换模板的单元格从而达到为单元格写入值得目的,在这儿一定要注意一定要先获取单元格的格式,否则是合并单元格这种、有边框这种不能正常显示
//获取坐标8与5的单元格对象
WritableCell wc = ws.getWritableCell(8,5);
//在源对象基础上实例化一个可写的单元格格式对象。wc.getCellFormat()只可读,不可写。
WritableCellFormat format=new WritableCellFormat( wc.getCellFormat());
if (a == null) {
//新建一个空的单元格
wc = new Blank(8, 5,wc.getCellFormat());
} else if (a instanceof String) {
//新建一个字符类型的单元格
wc = new Label(8, 5, a.toString(),format);
} else {
//新建一个数字类型的单元格
wc = new jxl.write.Number(8, 5, new Double(3.3),wc.getCellFormat());
}
//在ws这个sheet对象添加指定的wc对象单元格
ws.addCell(wc);
//写入
wwb.write();
//关闭可写工作簿
       wwb.close();       
       //法一结束
       /*法二 获取模板单元格并为单元格写入值
       if(a==null){
           //根据单元格不同类型写入相应类型的值
        Label wx=(Label)ws.getWritableCell(8,5);
   wx.setString("");
       }
       else if(a instanceof String){
           //根据单元格不同类型写入相应类型的值
           Label wx=(Label)ws.getWritableCell(8,5);
       wx.setString("nihaoma ");        
       }
       else{
           //根据单元格不同类型写入相应类型的值
        jxl.write.Number wx = (jxl.write.Number)ws.getWritableCell(8,5);
        wx.setValue(3.3);        
       } 
       wwb.write();      
       wwb.close();
       */    
} catch (Exception e) {
e.printStackTrace();
}  
}

}



如果想要能用的工程项目请到如下地址下载:http://download.csdn.net/detail/hu1992325/8488215

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值