我正在尝试编写一个程序,将数据附加到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();
}
}
答案 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
);
您将获得已打开的工作簿的副本。在该副本中进行所需的更改并保存。