jxl 总是报这个错误 java.lang.ArrayIndexOutOfBoundsException,代码如下
publicvoidwriteXls(StringfileName){try{Filefile=newFile(fileName);//打开文件WritableWorkb...
public void writeXls(String fileName){
try {
File file=new File(fileName);
//打开文件
WritableWorkbook book=Workbook.createWorkbook(file);
//生成名为"第一页"的工作表,参数0表示这是第一页
WritableSheet sheet=book.createSheet("first", 0);
//1.在Label对象的构造子中指明单元格位置是第一列第一行(0,0)
Label label=new Label(0,0,"dwc");
//将定义好的单元格添加到工资表中
sheet.addCell(label);
//添加带有字型Formatting的对象
WritableFont wf=new WritableFont(WritableFont.TIMES,18,WritableFont.BOLD,true);
WritableCellFormat wcff=new WritableCellFormat(wf);
Label labelCf=new Label(1,0,"你好,中国",wcff);
sheet.addCell(labelCf);
/*2.生成一个保存数字的单元格
必须使用Number的完整包路径,否则有语法歧义
单元格位置是第二列,第一行,值为789.123*/
jxl.write.Number number=new Number(0,1,789.123);
sheet.addCell(number);
//添加带有formatting的Number对象
NumberFormat nf=new NumberFormat("#.##");
WritableCellFormat wcfn=new WritableCellFormat(nf);
Number labelNf=new Number(1,1,3.123345,wcfn);
sheet.addCell(labelNf);
//3.添加Boolean对象
Boolean labelb=new Boolean(0,2,false);
sheet.addCell(labelb);
//4.添加DateTime对象
DateTime labelDt=new DateTime(0,3,new java.util.Date());
sheet.addCell(labelDt);
////添加带有formatting的DateFormat对象
DateFormat df=new DateFormat("dd MM yyyy hh:mm:ss");
WritableCellFormat wcfdf=new WritableCellFormat(df);
DateTime labeldf=new DateTime(1,3,new java.util.Date(),wcfdf);
sheet.addCell(labeldf);
//写入数据并关闭文件
book.write();
book.close();
} catch (IOException e) {
e.printStackTrace();
} catch (RowsExceededException e) {
e.printStackTrace();
} catch (WriteException e) {
e.printStackTrace();
}
}
public static void main(String[] args) {
JxlTest jxlTest=new JxlTest();
jxlTest.writeXls("d:/test.xls");
} 展开
try {
File file=new File(fileName);
//打开文件
WritableWorkbook book=Workbook.createWorkbook(file);
//生成名为"第一页"的工作表,参数0表示这是第一页
WritableSheet sheet=book.createSheet("first", 0);
//1.在Label对象的构造子中指明单元格位置是第一列第一行(0,0)
Label label=new Label(0,0,"dwc");
//将定义好的单元格添加到工资表中
sheet.addCell(label);
//添加带有字型Formatting的对象
WritableFont wf=new WritableFont(WritableFont.TIMES,18,WritableFont.BOLD,true);
WritableCellFormat wcff=new WritableCellFormat(wf);
Label labelCf=new Label(1,0,"你好,中国",wcff);
sheet.addCell(labelCf);
/*2.生成一个保存数字的单元格
必须使用Number的完整包路径,否则有语法歧义
单元格位置是第二列,第一行,值为789.123*/
jxl.write.Number number=new Number(0,1,789.123);
sheet.addCell(number);
//添加带有formatting的Number对象
NumberFormat nf=new NumberFormat("#.##");
WritableCellFormat wcfn=new WritableCellFormat(nf);
Number labelNf=new Number(1,1,3.123345,wcfn);
sheet.addCell(labelNf);
//3.添加Boolean对象
Boolean labelb=new Boolean(0,2,false);
sheet.addCell(labelb);
//4.添加DateTime对象
DateTime labelDt=new DateTime(0,3,new java.util.Date());
sheet.addCell(labelDt);
////添加带有formatting的DateFormat对象
DateFormat df=new DateFormat("dd MM yyyy hh:mm:ss");
WritableCellFormat wcfdf=new WritableCellFormat(df);
DateTime labeldf=new DateTime(1,3,new java.util.Date(),wcfdf);
sheet.addCell(labeldf);
//写入数据并关闭文件
book.write();
book.close();
} catch (IOException e) {
e.printStackTrace();
} catch (RowsExceededException e) {
e.printStackTrace();
} catch (WriteException e) {
e.printStackTrace();
}
}
public static void main(String[] args) {
JxlTest jxlTest=new JxlTest();
jxlTest.writeXls("d:/test.xls");
} 展开
4个回答
展开全部
qq
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
哪行出的错?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询