java读取Excel文件.

原创 2012年03月31日 16:20:27

import org.apache.commons.fileupload.FileItem;
import org.apache.commons.fileupload.FileItemFactory;
import org.apache.commons.fileupload.disk.DiskFileItemFactory;
import org.apache.commons.fileupload.servlet.ServletFileUpload;
import org.apache.poi.hssf.usermodel.HSSFSheet;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.apache.poi.ss.usermodel.Cell;
import org.apache.poi.ss.usermodel.Row;
import org.apache.poi.xssf.usermodel.XSSFSheet;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;

 

 protected void doPost(HttpServletRequest request,
   HttpServletResponse response) throws ServletException, IOException {
  response.setContentType("text/html; charset=utf-8");
  request.setCharacterEncoding("UTF-8");
  PrintWriter out = response.getWriter();
  out.print(execute(request));
  out.close();
 }

 @SuppressWarnings("unchecked")
 public String execute(HttpServletRequest request) {

  FileItemFactory factory = new DiskFileItemFactory();
  ServletFileUpload upload = new ServletFileUpload(factory);
  JSONObject obj = new JSONObject();
  try {
   List items = upload.parseRequest(request);

   for (Iterator i = items.iterator(); i.hasNext();) {
    FileItem fi = (FileItem) i.next();
    String fileName = fi.getName();
    
    if (null == fileName) {
    } else {
     String extension = fileName.lastIndexOf(".")== -1 ? "": fileName.substring(fileName.lastIndexOf(".")+ 1);
     InputStream is = fi.getInputStream();

     Iterator<Row> iterRow = null;

     if("xls".equalsIgnoreCase(extension)){
      // offices 2003
      HSSFWorkbook hwb = new HSSFWorkbook(is);
      HSSFSheet hsheet = hwb.getSheetAt(0);
      iterRow = hsheet.rowIterator();
     }else if(("xlsx").equalsIgnoreCase(extension)){
      // offices 2007
      XSSFWorkbook xwb = new XSSFWorkbook(is);
      XSSFSheet xsheet = xwb.getSheetAt(0);
      iterRow = xsheet.rowIterator();
     }else {
      isSuccess = false;
      obj.put("success", isSuccess);
      obj.put("msg", "导入文件格式不正确,请上传Excel文件!");
      is.close();
      return obj.toString();
     }

 

     for (Iterator<Row> iter1 = iterRow; iter1.hasNext();) {
      Row row = iter1.next();
      if (row.getRowNum() > 0) {
        // 迭代列
       for (Iterator<Cell> iter2 = (Iterator<Cell>) row
         .cellIterator(); iter2.hasNext();) {
        Cell cell = iter2.next();
        String value = cell.getStringCellValue();
               if (cell.getColumnIndex() == 2) {
                      .....

        } else if (cell.getColumnIndex() == 3) {
        ....

        } else if (cell.getColumnIndex() == 6) {
         ....        }
       }      }
     }
     is.close();

相关文章推荐

java POI读取Excel文件基本用法Demo

  • 2017年11月12日 17:38
  • 10.95MB
  • 下载

java 读取EXCEL文件

  • 2014年01月10日 11:09
  • 2KB
  • 下载

Java模块 -- 读取Excel文件写入数据库 Mybatis , POI , JXL

废话不多说,直接上代码结构图 所用到的lib包 Students 实体类 package com.test.model; public class Students { privat...

java利用jxl读取excel文件

  • 2017年06月28日 14:23
  • 569KB
  • 下载

基于POI的java读取excel文件,通用类

  • 2017年05月11日 13:28
  • 9.41MB
  • 下载

java操作office和pdf文件:读取word,excel和pdf文档内容

引用POI包读取word文档内容 poi.jar 下载地址 http://apache.freelamp.com/poi/release/bin/poi-bin-3.6-20091214.zip ...
  • elsery
  • elsery
  • 2015年12月15日 13:44
  • 928

Java读取Excel文件的内容

  • 2017年11月20日 11:08
  • 11.64MB
  • 下载

Java服务端读取excel文件xls格式内容

最近需要读取从客户端发送过来的excel文件内容,excel文件的格式是事先规定好的不变的。所以就研究了一下,因为是自己写的需要测试所以先写了个简单的网页上传文件,看客户端上传文件代码: ...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:java读取Excel文件.
举报原因:
原因补充:

(最多只允许输入30个字)