最近重新捡起了Java,写一个数据处理的程序,中间需要读写excel。以前没接触过这方面的东西,网络上一搜索,都说jxl不错,于是down了一个(down的时候费老大劲儿了,那个官方网站很难连上)。
感觉这个东西很容易上手,文档也还可以。但是也不是很完善,我往excel中写一个带comment的单元格时,怎么也不好用,到现在也没有解决,最后只好放弃。真是郁闷
主要代码如下:
WritableCellFormat format = new WritableCellFormat();
format.setBorder(Border.ALL, BorderLineStyle.THIN);
jxl.write.Label label = new jxl.write.Label(1, 2, "str"," format");
WritableCellFeatures cellf = new WritableCellFeatures();
cellf.setComment("comment");
label.setCellFeatures(cellf);
ws1.addCell(label);
这段一点问题都没有,但是当我调用ws1.write()方法往excel文件中写时,就报错退出了。感觉这是jxl的问题,希望后续版本能改进。
java.lang.NullPointerException
at jxl.biff.drawing.Comment.isFirst(Comment.java:869)
at jxl.biff.drawing.SheetDrawingWriter.write(SheetDrawingWriter.java:109)
at jxl.write.biff.SheetWriter.write(SheetWriter.java:430)
at jxl.write.biff.WritableSheetImpl.write(WritableSheetImpl.java:1164)
at jxl.write.biff.WritableWorkbookImpl.write(WritableWorkbookImpl.java:798)
at com.bearingpoint.psft.OutputToXLS.CloseXLT(OutputToXLS.java:281)
at com.bearingpoint.psft.MainFrame.main(MainFrame.java:1179)