繁体   English   中英

在Java中读取Excel工作表

[英]Reading Excel sheets in java

我正在制作一个使用apache库的Java程序,该程序从Excel文件读取,但是问题是,我正在定义要打开任何Excel文件的每张工作表,并且能够选择任何工作表以及用工作表填充ComboBox名称。 (我正在使用JComboBox选择工作表)。

我的尝试:

FileInputStream fileInputStream = new FileInputStream(filePath);
XSSFWorkbook workbook = new XSSFWorkbook(fileInputStream);

int sheetNum = workbook.getNumberOfSheets();
for(int i = 0; i < sheetNum; i++) {
    String sheetname = workbook.getSheetName(i);
    chooseSheetComboBox.addItem(sheetname);
}

int choosenSheet = chooseSheetComboBox.getSelectedIndex();
XSSFSheet sheet = workbook.getSheetAt(choosenSheet);

您必须在组合框的项目上方添加一个事件处理程序,只需将其填充到循环中:

  chooseSheetComboBox.addItemListener(new ItemListener() {
        @Override
        public void itemStateChanged(ItemEvent e) {
            if (e.getStateChange() == ItemEvent.SELECTED) {
                choosenSheet = chooseSheetComboBox.getSelectedIndex();
              XSSFSheet sheet = workbook.getSheetAt(choosenSheet);
               // complete your logic, maybe call a method that takes XSSFSheet in parameters
            }
        }
    });

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM