浏览 2835 次
锁定老帖子 主题:Jxl解析excel
精华帖 (0) :: 良好帖 (0) :: 新手帖 (1) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2009-09-08
首先.要在工程lib里加入 jxl.jar 这个包是肯定的! 在头部导入这些类 当然还有其他类可以用到 呵呵 import jxl.Sheet; import jxl.Workbook; import jxl.CellType; /** * 解析Xls文件 参数1:文件写入流(也就是把excel变成流 其他参数因为业务 需要 才做的 暂不考虑) * 参数2:分公司 * 参数3:最后修改人名称 */ public String parsexls(InputStream in, String i_subcomp_id,String username) { Workbook book; //声明一个空的工作对象 ArrayList listupdate = new ArrayList(); ArrayList listinsert = new ArrayList(); ArrayList listmsg = new ArrayList(); String subcompid = ""; String msg = ""; String cellid = ""; try { book = Workbook.getWorkbook(in);//使工作薄对象得到一个execl Sheet se = book.getSheet(0); //得到Excel第一个sheet int rownum = se.getRows(); //获取Excel里的总记录数 StringBuffer sb=new StringBuffer(); boolean iserror=false; for (int i = 1; i < rownum; i++) { //循环读取 int j=i+1; ProjectData pd = new ProjectData(); // 分公司(得到第i行第0列的类型)其中 getContents()为拿到那一列的值 if (se.getCell(0, i).getType() != CellType.EMPTY) { String subcompName = se.getCell(0, i).getContents().trim(); subcompid = this.getCompId(subcompName); if (i_subcomp_id.equals("0")) { if (subcompid == null || subcompid.equals("")) { msg = "第" + j + "行第1列分公司名称不正确!"; sb.append(msg+"<br>"); iserror=true; } else { pd.setI_subcomp_id(subcompid); } } else { if (!subcompid.equals(i_subcomp_id)) { msg = "第" + j + "行第1列导入数据的分公司与用户分公司不符!"; sb.append(msg+"<br>"); iserror=true; } else { if ( subcompid == null || subcompid.equals("") ) { msg = "第" + j + "行第1列分公司名称不正确!"; sb.append(msg+"<br>"); iserror=true; } else { pd.setI_subcomp_id(subcompid); } } } } else { msg = "第" + j + "行第1列分公司值为空"; sb.append(msg+"<br>"); iserror=true; } } } 我上传的有jxl.jar包哦~ 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2010-01-12
恩 很好很强大
|
|
返回顶楼 | |