2017-09-02 5 views
1

Excelセルのすべての値を印刷するコードがありますが、空白のセルは無視されています。空のセル(null)の値を印刷する方法はありますか?Javaを使用してexcelから10および11列の値を印刷

また、10番目と11番目の列のような特定の2つの特定の列(空白のセルを含む)を印刷することは可能ですか?

以下は私のコードです。私は以下のコードで何が変わることができるかを提案してください。

package excel; 

import java.io.File; 
import java.io.FileInputStream; 
import java.util.Iterator; 

import org.apache.poi.ss.usermodel.Row; 
import org.apache.poi.ss.usermodel.Cell; 
import org.apache.poi.xssf.usermodel.XSSFSheet; 
import org.apache.poi.xssf.usermodel.XSSFWorkbook; 

public class Excel 
{ 
    public static void main(String[] args) { 
     try { 
      FileInputStream file = new FileInputStream(new File("C:\\Users\\gur29175\\Desktop\\1.xlsx")); 

      //Create Workbook instance holding reference to .xlsx file 
      XSSFWorkbook workbook = new XSSFWorkbook(file);   
      XSSFSheet sheet = workbook.getSheetAt(0); 

      //Iterate through each rows one by one 
      Iterator<Row> rowIterator = sheet.iterator(); 
      while (rowIterator.hasNext()) 
      { 
       Row row = rowIterator.next(); 
       //For each row, iterate through all the columns 
       Iterator<Cell> cellIterator = row.cellIterator(); 

       while (cellIterator.hasNext()) 
       { 
        Cell cell = cellIterator.next(); 
        //Check the cell type and format accordingly 
          System.out.print(cell.getStringCellValue() + "\t"); 


       } 
       System.out.println(""); 
      } 
      file.close(); 
     } catch (Exception e) { 
      e.printStackTrace(); 
     } 
    } 
} 
+0

https://poi.apache.org/spreadsheet/quick-guide.html#Iterate+over+cells%2C+with+control+of+missing+%2F+blank+cells –

答えて

1
Row row = rowIterator.next(); 
for(int i = 0; i < row.getLastCellNum(); i++) { 
    Cell cell = row.getCell(i); 
    if(cell != null && cell.getCellType() != Cell.CELL_TYPE_BLANK) { 
     // handle not null values 
    }else{ 
     // handle null values 
    } 
} 
関連する問題