poi读取excel文件内容

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了poi读取excel文件内容相关的知识,希望对你有一定的参考价值。

现在我想读取excel中的部分内容再存到数据库,读取的时候是读取excel的部分内容,如图所示

我只要读2-4行,E-F列的数据,然后存到数据库,应该怎么遍历,使用的是poi,解决问题继续追分~~~
我想的方法是一个方法里有四个参数,起始行终止行起始列终止列……

        //参数分别是开始行,结束行,行对应的开始列和结束列
        public void getExcelElement(int startRow,int endRow,int startCell,int endCell)
            XSSFWorkbook wb=new XSSFWorkbook();
            XSSFSheet sheet=wb.getSheet("sheetName");
            for(int i=startRow;i<=endRow;i++)
                XSSFRow row=sheet.getRow(i);
                for(int a=startCell;a<=endCell;a++)
                    XSSFCell cell=row.getCell(a);
                    System.out.println(cell);
                
            
            
        


我没跑过 你先试试 有问题再说追问

你这个只能读2007的,要分情况,我已经研究出来了,不过还是谢谢哈

参考技术A 我可以帮你写 看我摆渡号 找我吧

利用POI读取Excel有效行数(含有内容)

参考技术A public static void main(String[] args)
Workbook wb = null;
try
//如果是xls,使用HSSFWorkbook;如果是xlsx,使用XSSFWorkbook
wb = new HSSFWorkbook(new FileInputStream("G:\excel\test.xls"));
catch (Exception e)
e.printStackTrace();

//获取第一个画布
Sheet sheet = wb.getSheetAt(0);
CellReference cellReference = new CellReference("A4");
boolean flag = false;
for (int i = cellReference.getRow(); i <= sheet.getLastRowNum();)
Row r = sheet.getRow(i);
if(r == null)
//如果是空行(即没有任何数据、格式),直接把它以下的数据往上移动
sheet.shiftRows(i+1, sheet.getLastRowNum(),-1);
continue;

flag = false;
for(Cell c : r)
if(c.getCellType() != Cell.CELL_TYPE_BLANK)
flag = true;
break;


if(flag)
i++;
continue;
else//如果是空白行(即可能没有数据,但是有一定格式)
if(i == sheet.getLastRowNum())
//如果到了最后一行,直接将那一行remove掉
sheet.removeRow(r);
else
//如果还没到最后一行,则数据往上移一行
sheet.shiftRows(i+1, sheet.getLastRowNum(),-1);



System.out.println("有效行数为:"+(sheet.getLastRowNum()+1));

以上是关于poi读取excel文件内容的主要内容,如果未能解决你的问题,请参考以下文章

用java的poi类读取一个excel表格的内容后再写入到一个新excel表格中的完整代码

java如何读取整个excel文件的内容

java 写excel 文件的问题,写完后 就把原来的内容清除了

java读取excel报错

利用POI读取Excel有效行数(含有内容)

java poi怎么获取excel单元格的内容