将数据附加到Excel文件中

时间:2011-04-01 04:12:18

标签: java excel jexcelapi

我正在尝试编写一个程序,将数据附加到Java中的Excel文件中。我达到了以下代码。但它会重写Excel文件中的内容,而不是附加到它。请帮我完成这个。

public class jExcel
{
    static WritableWorkbook workbook;
    public static void main(String args[])throws Exception
    {
        workbook = Workbook.createWorkbook((new File("D:\\0077\\my2.xls")));
        WritableSheet sheet = workbook.createSheet("First Sheett",1);
        Label label = new Label(5,2,"ssssssssss");
        sheet.addCell(label);
        workbook.write();
        workbook.close();
    }
}

3 个答案:

答案 0 :(得分:5)

而不是使用createWorkbook使用“getWorkbook(java.io.File file)”来获取现有的Excel。 然后使用getSheet(int index)检索相应的工作表。

使用“addCell(WritableCell cell)”将单元格附加到工作表上。

Workbook workbook = Workbook.getWorkbook(new File(""D:\\0077\\my2.xls""));
WritableWorkbook copy = Workbook.createWorkbook(new File("output.xls"), workbook);
WritableSheet sheet2 = copy.getSheet(1); 
Label label = new Label(5,2,"ssssssssss"); 
sheet2.addCell(label); 

你会在这里找到很多例子。 http://www.andykhan.com/jexcelapi/tutorial.html

答案 1 :(得分:5)

//写入XLS

    WritableWorkbook workbook = Workbook.createWorkbook(new File("D:\\output.xls"));
    WritableSheet sheet = workbook.createSheet("First Sheet", 0);
    Label label = new Label(0, 2, "A label record"); 
    sheet.addCell(label);
    workbook.write(); 
    workbook.close();

    //MODIFY XLS

    Workbook workbook1 = Workbook.getWorkbook(new File("D:\\output.xls"));
    WritableWorkbook copy = Workbook.createWorkbook(new File("D:\\output.xls"), workbook1);
    WritableSheet sheet2 = copy.getSheet(0); 
    //WritableCell cell = sheet2.getWritableCell(5, 2); 

    copy.write();
    copy.close();

答案 2 :(得分:1)

从文件中打开workbook后,请执行以下操作:

WritableWorkbook copy = Workbook.createWorkbook(
   new File(""D:\\0077\\my2_copy.xls""), 
   workbook
);

您将获得已打开的工作簿的副本。在该副本中进行所需的更改并保存。