2013-02-19 17 views
9

Excel dosyasından bir sayfayı silmem gerekiyor. Apache'yi kullanarak bir excel sayfasını silin POI

beni bu çözmesine yardımcı olun ben sac "Setup" ortadan kaldırılmasına olmadan geçtim aynı çalışma kitabını alma olduğum Bundan sonra

FileInputStream fileStream = new FileInputStream(destFile); 
POIFSFileSystem fsPoi = new POIFSFileSystem(fileStream); 

HSSFWorkbook workbook = new HSSFWorkbook(fsPoi); 

int index = 0; 

HSSFSheet sheet = workbook.getSheet("Setup"); 
if(sheet != null) { 
    index = workbook.getSheetIndex(sheet); 
    workbook.removeSheetAt(index); 
} 
return destFile; 

:

İşte benim kod parçacığı bu. Herhangi bir yardım için teşekkür ederiz

cevap

12

Çalışma kitabınızı düzenledikten sonra tekrar yazmanız gerekir. Bu deneyin: -

FileOutputStream output = new FileOutputStream(destFile); 
workbook.write(output); 
output.close(); 

Düzenleme: - geri yazma sonra, destFile dönebilir.

0
private void removeOtherSheets(String sheetName, XSSFWorkbook book) {  
     for(int i=book.getNumberOfSheets()-1;i>=0;i--){ 
      XSSFSheet tmpSheet =book.getSheetAt(i); 
      if(!tmpSheet.getSheetName().equals(sheetName)){ 
       book.removeSheetAt(i); 
      } 
     }  
} 
İlgili konular