2010-07-05 435 views
3

我使用Apache POI寫入.xlsx文件。我可以寫入.xlsx文件,但我無法附加新內容。我如何在.xlsx文件中添加新內容?通過java將數據追加到xlsx文件中

我的代碼是:

public static void write(){ 
    try {   
     Workbook[] wbs = new Workbook[]{new XSSFWorkbook()}; 
     Workbook workbook=wbs[0]; 
     org.apache.poi.ss.usermodel.Sheet sheet = workbook.createSheet(); 
     System.out.println(sheet.getSheetName()); 
     Row row = sheet.createRow(2); 
     for(int i=0;i<10;i++){ 
       Cell cell=row.createCell(i); 
       cell.setCellValue("Sun System"); 
     } 
     FileOutputStream fout=new FileOutputStream("D:/Test.Xlsx"); 
     workbook.write(fout); 
     fout.close(); 
    } catch (Exception e) { 
    } 
} 
+1

什麼樣的內容?細胞?列?工作表?而關於*無法* - 由於錯誤/異常或因爲您需要額外的知識? – 2010-07-05 08:26:45

回答

6

第一你需要做的事情:

當你使用Excel 2007格式時,使用XSSF-Implementations更明智,因爲你已經使用了abstr行動實施。使用任何實現時請務必記住這一點。

要附加到現有文件,您需要到達該特定工作簿表中行的末尾。這可以通過以下方式實現:

int rows = sheet.getPhysicalNumberOfRows(); // or sheet.getLastRowNum(); 

之後,您可以使用XSSF-實現類創建新單元。欲瞭解更多信息,請參閱this page