我正在尝试自学如何写入excel文件,只是从教程中复制并粘贴一些代码,这段代码应该没有错误,因为我在其他几个教程中看到过类似的东西。那么为什么Label(错误是:构造函数是未定义的)和AddCell(错误是:WritableSheet类型中的方法addCell(WritableCell)不适用于作用于我的参数(Label))?
private void addCaption(WritableSheet sheet, int column, int row, String s)
throws RowsExceededException, WriteException {
Label label;
label = new Label(column, row, s, timesBoldUnderline); //error
sheet.addCell(label); //error
}
进口:
import java.awt.Label;
import java.io.File;
import java.io.IOException;
import java.util.Locale;
import jxl.JXLException;
import jxl.CellView;
import jxl.Workbook;
import jxl.WorkbookSettings;
import jxl.format.UnderlineStyle;
import jxl.write.Formula;
import jxl.write.Label;
import jxl.write.Number;
import jxl.write.WritableCell;
import jxl.write.WritableCellFormat;
import jxl.write.WritableFont;
import jxl.write.WritableSheet;
import jxl.write.WritableWorkbook;
import jxl.write.WriteException;
import jxl.write.biff.RowsExceededException;
答案 0 :(得分:1)
在导入中导入两个不同的标签。一个来自java.awt
,一个来自jxl.write
。您得到的错误是构造函数未定义,因此您的代码最有可能使用错误的Label,而没有像这样的构造函数。并且您还得到addCell()
方法不适用于参数Label的错误,因此代码可能再次使用错误的Label。
所有这一切都可以通过将包添加到Label中来轻松解决,如下所示:
jxl.write.Label label;
label = new jxl.write.Label(column, row, s, timesBoldUnderline);
sheet.addCell(label);
那应该解决你的问题。
祝你好运:)