写入EXCEL的问题

yy2001 2007-09-26 08:55:38
我使用JXL向EXCEL模板中写入一些单元格的内容,代码如下:
Workbook wb = Workbook.getWorkbook(new File(strFileName));
ByteArrayOutputStream targetFile = new ByteArrayOutputStream();
WritableWorkbook wwb = Workbook.createWorkbook(targetFile, wb);
WritableSheet wws = wwb.getSheet(0);
for (int r=3;r<=26;r++)
{
for (int c=4;c<=7;c++)
{
WritableCell wc1 = wws.getWritableCell(c,r);
Label sex = (Label)wc1;
sex.setString("a");
}
}
但总是报NULL错误,请问这个写法那里不对么?谢谢!
...全文
200 16 打赏 收藏 转发到动态 举报
写回复
用AI写文章
16 条回复
切换为时间正序
请发表友善的回复…
发表回复
awusoft 2007-09-28
  • 打赏
  • 举报
回复
晕了,我又试了下,不放到循环里,单个写就可以,但同样的循环用NEW那种方法就可以,那就应该是循环取的行列没问题吧?那为什么用getWritableCell就不行了呢??


---我估计是你的有些列的模式不是完全相同,所以在循环里不行
yy2001 2007-09-28
  • 打赏
  • 举报
回复
晕了,我又试了下,不放到循环里,单个写就可以,但同样的循环用NEW那种方法就可以,那就应该是循环取的行列没问题吧?那为什么用getWritableCell就不行了呢??
yy2001 2007-09-28
  • 打赏
  • 举报
回复
自己解决了,散分吧
yy2001 2007-09-28
  • 打赏
  • 举报
回复
AWUSOFT(如果可以了,请结贴,谢谢!) :
感谢指点,请问你说的模式如何设置?谢谢!
yy2001 2007-09-27
  • 打赏
  • 举报
回复
应该没有超出边界值,我换成
for (int r=3;r<=6;r++)
{
for (int c=4;c<=7;c++)
{
WritableCell wc1 = wws.getWritableCell(c,r);
Label sex = (Label)wc1;
sex.setString("a");
}
}
也不行,而且我用:
wws.addCell(new Label(c,r,"0"));
这样是可以正常写入的
加油馒头 2007-09-27
  • 打赏
  • 举报
回复
UP
jk88811 2007-09-27
  • 打赏
  • 举报
回复
还不如先做一个有表头的Excel模板, 加入数据后自动就有了格式
jk88811 2007-09-27
  • 打赏
  • 举报
回复
要控制单元格格式就不好弄了...
yy2001 2007-09-27
  • 打赏
  • 举报
回复
buctreny(reny) :
这样没问题,但把单元格的格式弄没了
buctreny 2007-09-27
  • 打赏
  • 举报
回复
// 修改第6行6列的数据
Label label=new Label(5,5,"气喘吁吁 ");
ws.addCell(label);
fengmingjie 2007-09-27
  • 打赏
  • 举报
回复
最好是设置断点单步调试一下
refyl 2007-09-27
  • 打赏
  • 举报
回复
c,r这个格子不是有效的
shengli_liao 2007-09-26
  • 打赏
  • 举报
回复
挨个打印调试呀
aaa2003gf 2007-09-26
  • 打赏
  • 举报
回复
for (int r=3;r<=26;r++)
{
for (int c=4;c<=7;c++)
{
WritableCell wc1 = wws.getWritableCell(c,r);
Label sex = (Label)wc1;
sex.setString("a");
}
}

应该是边界值计算错误. 看看是否超出最大值了.
yy2001 2007-09-26
  • 打赏
  • 举报
回复
就是setString这报的错,我用NEW的方法就可以正常写入,但我要保持原由单元格的格式,所以想用这个方法,但就是报错,不解,请大侠指点.
sunyujia 2007-09-26
  • 打赏
  • 举报
回复
单步跟踪看是那行报错,那一行的某个对象就是null,或者捕获这个异常,就知道那一行了,null的问题最好解决的,慢慢来,空指针就是说的你的对象在new的时候失败了或者根本没用new,从其他的地方没用取得对象,例如文件,如果路径不对找不到就无法实例化file对象

62,616

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧