package jexcel.jxl.nimit;

    import java.awt.Label;
    import java.io.File;
    import java.io.IOException;

    import jxl.Cell;
    import jxl.CellType;
    import jxl.LabelCell;
    import jxl.NumberCell;
    import jxl.Sheet;
    import jxl.Workbook;
    import jxl.read.biff.BiffException;
    import jxl.write.WritableCell;
    import jxl.write.WritableSheet;
    import jxl.write.WritableWorkbook;
    import jxl.write.WriteException;
    import jxl.write.biff.RowsExceededException;

    public class ExcelJxl {

    /**
     * @param args
     * @throws IOException
     * @throws BiffException
     * @throws WriteException
     * @throws RowsExceededException
     */
    public static void main(String[] args) throws BiffException, IOException, RowsExceededException, WriteException {
        // TODO Auto-generated method stub
             ExcelJxl.WriteFile("D:\nimit.xls");
    }

    public static void WriteFile(String path) throws BiffException, IOException, RowsExceededException, WriteException{

    Workbook wb=Workbook.getWorkbook(new File(path));

    WritableWorkbook copy=Workbook.createWorkbook(new File("D:\temp.xls"),wb);
    WritableSheet sheet = copy.getSheet(1);
    WritableCell cell = sheet.getWritableCell(0,0);
    String S="nimit";
    if (cell.getType() == CellType.LABEL)
    {
      LabelCell l = (LabelCell) cell;
      l.setString(S);
    }
    copy.write();
    copy.close();
    wb.close();

    }
   }

我已经编辑了我的程序,现在它说 setString() 对于类型 LabelCell 方法 setString(String) 未定义我阅读了文档,在 LabelCell 类型中有一个方法 setString。

最佳答案

LabelCell 只是一个只有一种方法的接口(interface),即 getString() 你可以了解更多关于它 here

您应该改用 jxl.write.Label
你应该做的是如下
您应该导入以下文件

import jxl.write.Label

然后以下是将所需位置的单元格添加到excel文件的代码
Workbook existingWorkbook = Workbook.getWorkbook(new File(fileToEdit.getAbsolutePath()));
WritableWorkbook workbookCopy = Workbook.createWorkbook(new File("output.xls"), existingWorkbook);
WritableSheet sheetToEdit = workbookCopy.getSheet(sheetName);
WritableCell cell;
Label l = new Label(currentColumn, currentRow, value);
cell = (WritableCell) l;
sheetToEdit.addCell(cell);
 workbookCopy.write();
 workbookCopy.close();
 existingWorkbook.close();
currentColumncurrentRow 定义索引,值包含要放置在该单元格中的字符串。

希望能帮助到你

10-07 20:02