Reputation: 33605
How to get the column names in an Excel file using Apache POI, to make sure that the columns are ordered as expected.
Upvotes: 17
Views: 61664
Reputation: 138
Or this:
cell.getSheet().getRow(0).getCell(currentcellIndex)
.getRichStringCellValue().toString()
Row indexes start from 0.
Upvotes: 9
Reputation: 11
To get cell name:
String cellName = new CellAddress(intRow, intCol).toString();
Upvotes: 1
Reputation: 572
Apache POI, translating Excel column number to letter
FileInputStream fis = new FileInputStream(
new File("D:\\workspace\\Writesheet.xlsx"));
@SuppressWarnings("resource")
XSSFWorkbook workbook = new XSSFWorkbook(fis);
XSSFSheet spreadsheet = workbook.getSheetAt(0);
int lastcell=spreadsheet.getRow(0).getLastCellNum();
//Non empty Last cell Number or index return
for(int i=0;i<=lastcell;i++)
{
try
{
System.out.println(CellReference.convertNumToColString(i));
}catch(Exception e)
{}
}
fis.close();
Upvotes: 5
Reputation: 16641
There is a convenience method for this:
CellReference.convertNumToColString(cell.getColumnIndex());
To get the full name:
private static String getCellName(Cell cell)
{
return CellReference.convertNumToColString(cell.getColumnIndex()) + (cell.getRowIndex() + 1);
}
Upvotes: 37