java Excel导入MySQL数据库将表格文件导入二维数组问题。 10

我是使用的poi3.11,但导入二维数组时for循环遍历只能是数组或者list对象。不知道怎么写了。代码如下publicstaticString[][]readWorkb... 我是使用的poi3.11,但导入二维数组时for循环遍历只能是数组或者list对象。不知道怎么写了。代码如下public static String[][] readWorkbookToArray(String path) throws IOException {InputStream inp = null;Workbook workbook = null;String[][] sheetArray=null;try {inp = new FileInputStream(path);workbook = WorkbookFactory.create(inp);FormulaEvaluator evaluator = workbook.getCreationHelper().createFormulaEvaluator();Sheet sheet1=workbook.getSheetAt(0);//int lastNum=sheet1.getLastRowNum();int coloumNum=sheet1.getRow(0).getPhysicalNumberOfCells();int rowNumt=sheet1.getLastRowNum();//获得总行数//Row row2=sheet1.getRow(1);System.out.println(coloumNum+"**************"+rowNumt);sheetArray=new String[rowNumt][coloumNum];for (Sheet sheet : workbook) {//String[][] sheetArray=newfor (int i=0;i<rowNumt;i++) {int rowNum=i;Row row=sheet.getRow(i);//System.out.println(rowNum+"*****rowNum********");for (Cell cell : row) {int cellNum=cell.getColumnIndex();switch (cell.getCellType()) {case Cell.CELL_TYPE_NUMERIC:sheetArray[rowNum][cellNum]=cell.getNumericCellValue()+"";System.out.print(formatNumericCell(cell.getNumericCellValue(), cell)+ "\t");break;case Cell.CELL_TYPE_STRING:sheetArray[rowNum][cellNum]=cell.getStringCellValue()+"";System.out.print(cell.getStringCellValue() + "\t");break;}}//System.out.println();}//}} catch (FileNotFoundException e) {e.printStackTrace();} catch (EncryptedDocumentException e) {e.printStackTrace();} catch (InvalidFormatException e) {e.printStackTrace();} catch (IOException e) {e.printStackTrace();} finally {if (workbook != null) {try {workbook.close();} catch (IOException e) {e.printStackTrace();}}if (inp != null) {try {inp.close();} catch (IOException e) {e.printStackTrace();}}}return sheetArray;}
就是这个遍历数组workbook问题,如何改一个方式写。意思,效果不变就行了- -
展开
 我来答
匿名用户
2017-08-03
展开全部
Iterator<XSSFSheet> it = wb.iterator();
while(it.hasNext()){
    XSSFSheet sheet = it.next();
    for(int i=0;i< sheet.getLastRowNum();i++){
        Row row = sheet.getRow(i);
        ...
    }
}
追问
iterator好像在这不能用吧。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式