Java 获取列';使用ApachePOI的Excel文件中的名称

Java 获取列';使用ApachePOI的Excel文件中的名称,java,apache-poi,Java,Apache Poi,如何使用Apache POI获取Excel文件中的列名,以确保列按预期顺序排列。或者: cell.getSheet().getRow(0).getCell(currentcellIndex) .getRichStringCellValue().toString() 行索引从0开始 有一种方便的方法: CellReference.convertNumToColString(cell.getColumnIndex()); 要获取全名,请执行以下操作: private static Str

如何使用Apache POI获取Excel文件中的列名,以确保列按预期顺序排列。

或者:

cell.getSheet().getRow(0).getCell(currentcellIndex)
    .getRichStringCellValue().toString()

行索引从0开始

有一种方便的方法:

CellReference.convertNumToColString(cell.getColumnIndex());
要获取全名,请执行以下操作:

private static String getCellName(Cell cell)
{
    return CellReference.convertNumToColString(cell.getColumnIndex()) + (cell.getRowIndex() + 1);
}

Apache POI,将Excel列编号转换为字母

      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();
FileInputStream fis=新的FileInputStream(
新文件(“D:\\workspace\\Writesheet.xlsx”);
@抑制警告(“资源”)
XSSF工作簿=新XSSF工作簿(fis);
XSSFSheet电子表格=工作簿.getSheetAt(0);
int lastcell=spreadsheet.getRow(0.getLastCellNum();
//非空的最后单元格编号或索引返回
对于(int i=0;i获取单元格名称:

String cellName = new CellAddress(intRow, intCol).toString();

你的意思是“A”、“B”吗?如果不是,列名是什么意思?列通常是通过将名称放在最上面一行来“命名”的。@Ed Staub有可能得到“A”和“B”吗?我有一个类似的要求,如果有人能确认行是否从0开始,那就好了。“不确定是否”不是理想的可接受答案。@halfer我认为这取决于excel工作表的创建方式。@halfer是的。行的索引从0开始。请添加更多解释