当方法的大小是动态的时,如何从方法返回2d数组?

时间:2014-03-18 10:26:43

标签: java apache-poi

您好我有以下代码,这里我必须从此函数返回存储在数组s[][]中的数据,请帮助我如何做到。

 public static String[][] readxl(String filepath) throws FileNotFoundException, IOException
        {
            FileInputStream file = new FileInputStream(new File(filepath));
            HSSFWorkbook workbook = new HSSFWorkbook(file);
            HSSFSheet sheet = workbook.getSheetAt(0);
            int rowcount = sheet.getPhysicalNumberOfRows();
            Row row1 = sheet.getRow(0);
            int colcount=row1.getPhysicalNumberOfCells();
            String[][]s = new String[rowcount][colcount];
            for(int i=0;i<sheet.getPhysicalNumberOfRows();i++)
            {
                Row row = sheet.getRow(i);
                for(int j=0; j<row.getPhysicalNumberOfCells();j++)
                {
                    Cell c = sheet.getRow(i).getCell(j);
                    int celltype = c.getCellType();
                    if(celltype==1)
                    {
                        s[i][j] =c.getStringCellValue();               
                    }
                    if(celltype==0)
                    {   
                        s[i][j] =String.valueOf((int)c.getNumericCellValue()); 
                    }

                }
            }

1 个答案:

答案 0 :(得分:4)

您可以直接使用

return s;

即使大小是动态的,返回数组也没有问题。

祝你好运。