package com.smp.server.Ctrl;

import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.InputStream;
import java.util.ArrayList;
import java.util.List;

import com.smp.server.model.TxlBean;

import jxl.Sheet;
import jxl.Workbook;
import jxl.read.biff.BiffException;
public class GetExcelInfo {
 public static void main(String[] args) {
  GetExcelInfo obj = new GetExcelInfo();
  obj.readExcel("E:/txl.xls");
 }
 // 去读Excel的方法readExcel,该方法的入口参数为一个File对象
 public List<TxlBean> readExcel(String filepath) {
  File file = new File(filepath);
  List<TxlBean> txlList = new ArrayList<TxlBean>();
  try {
   // 创建输入流,读取Excel
   InputStream is = new FileInputStream(file.getAbsolutePath());
   // jxl提供的Workbook类
   Workbook wb = Workbook.getWorkbook(is);
   // Excel的页签数量
   int sheet_size = wb.getNumberOfSheets();
   for(String str:wb.getSheetNames()){
    System.out.println("===========str=========="+str);
   }
   for (int index = 0; index < sheet_size; index++) {
    //获得页签名称
    String sheetnames[] = wb.getSheetNames();
    
    // 每个页签创建一个Sheet对象
    Sheet sheet = wb.getSheet(index);
    // sheet.getRows()返回该页的总行数
    //第一行列名称,不读取
    String deptname="";
    for (int i = 1; i < sheet.getRows(); i++) {
     TxlBean txlbean = new TxlBean();
     //机构
     if(null!=sheet.getCell(0, i).getContents()&&!sheet.getCell(0, i).getContents().equals("")){
      deptname=sheet.getCell(0, i).getContents();
     }else{
      //不变
     } 
     //联系人
     if((null!=sheet.getCell(1, i).getContents()&&!sheet.getCell(1, i).getContents().equals(""))&&(null!=sheet.getCell(3, i).getContents()&&!sheet.getCell(3, i).getContents().equals("")))
     {
      txlbean.setBz(sheetnames[index]);//所属分类
      txlbean.setJg(deptname);//机构名
      txlbean.setLxr(sheet.getCell(1, i).getContents());//联系人
      txlbean.setSjh(sheet.getCell(3, i).getContents());//手机号
      txlList.add(txlbean);
     }
 
    }
   }
  } catch (FileNotFoundException e) {
   e.printStackTrace();
  } catch (BiffException e) {
   e.printStackTrace();
  } catch (IOException e) {
   e.printStackTrace();
  }
  return txlList;
 }
 
}

java读取excel文件数据的更多相关文章

  1. java读取excel文件数据导入mysql数据库

    这是我来公司的第二周的一个小学习任务,下面是实现过程: 1.建立maven工程(方便管理jar包) 在pom.xml导入 jxl,mysql-connector 依赖 可以在maven仓库搜索 2.建 ...

  2. 项目一:第四天 1、快递员的条件分页查询-noSession,条件查询 2、快递员删除(逻辑删除) 3、基于Apache POI实现批量导入区域数据 a)Jquery OCUpload上传文件插件使用 b)Apache POI读取excel文件数据

    1. 快递员的条件分页查询-noSession,条件查询 2. 快递员删除(逻辑删除) 3. 基于Apache POI实现批量导入区域数据 a) Jquery OCUpload上传文件插件使用 b) ...

  3. 上传读取Excel文件数据

    /// <summary> /// 上传读取Excel文件数据 /// 来自http://www.cnblogs.com/cielwater /// </summary> // ...

  4. Java读取Excel文件的几种方法

    Java读取 Excel 文件的常用开源免费方法有以下几种: 1. JDBC-ODBC Excel Driver 2. jxl.jar 3. jcom.jar 4. poi.jar 简单介绍: 百度文 ...

  5. java读取excel文件的代码

    如下内容段是关于java读取excel文件的内容,应该能对各朋友有所用途. package com.zsmj.utilit; import java.io.FileInputStream;import ...

  6. 关于解决java读取excel文件遇空行抛空指针的问题 !

    关于解决java读取excel文件遇空行抛空指针的问题 ! package exceRead; import java.io.File; import java.io.FileInputStream; ...

  7. java 读取Excel文件并数据持久化方法Demo

    import java.io.IOException; import java.io.InputStream; import java.util.ArrayList; import java.util ...

  8. JAVA 读取excel文件成List<Entity>

    package com.fsinfo.common.utils; import com.fsinfo.modules.enterprise.entity.EnterpriseRecordEntity; ...

  9. VC6.0读取Excel文件数据

    啰嗦一下:本人所在公司从事碟式斯特林太阳能发电设备的研发与销售.单台设备图如下: 工作原理如下:整个设备大致可分为五个部分, 1.服务器,负责气象.发电等数据存取,电.网连接等处理: 2.气象站,通过 ...

随机推荐

  1. oracle 存储过程和函数例子

    关于 游标 if,for 的例子 create or replace procedure peace_if is cursor var_c is select * from grade; begin ...

  2. 自己封装的OKhttp请求

    package com.create.qdocumentimtest.rxjavatest; import com.squareup.okhttp.Callback; import com.squar ...

  3. ACM题目————吝啬的国度

    描述 在一个吝啬的国度里有N个城市,这N个城市间只有N-1条路把这个N个城市连接起来.现在,Tom在第S号城市,他有张该国地图,他想知道如果自己要去参观第T号城市,必须经过的前一个城市是几号城市(假设 ...

  4. html的textarea控制字数小案例

    <h3>设计理念说明(200字以内)</h3> <textarea onkeyup="checkLen(this)"></textarea ...

  5. 织梦cms PHPcms 帝国cms比较

    现在建网站不需要请程序员从基础的程序开发做起了,有专业的建站工具,CMS是使用最广泛的建站工具.CMS是Content Management System 现在建网站不需要请程序员从基础的程序开发做起 ...

  6. ioshittest的用法

    昨天,发一个一个BUG.应用了一个第三方控件.一切好,效果出来符合要求. 准备收工时,再次进行测试,发现一个很严重后果的BUG,view上的按钮事件都没了. 经过各种测试,发现就是新引入的第三方控件引 ...

  7. VC++界面编程之--阴影窗口的实现详解

    转载:http://blog.csdn.net/rmxming/article/details/11661365 对于我们这些控件狂来说,窗口阴影也是一个必不可少的实现需求.虽说其没多大用,但对于增加 ...

  8. BZOJ 3144 切糕(最小割)

    题目链接:http://61.187.179.132/JudgeOnline/problem.php?id=3144 题意: 思路:我们假设没有那个D的限制.这样就简 单了.贪心的话,我们只要在每一个 ...

  9. 主框架搭建demo

    - (void)viewDidLoad {     [super viewDidLoad];        [self setUpAllChildViewController]; }    /**   ...

  10. IOS之分析网易新闻存储数据(CoreData的使用,增删改查)

    用过网易新闻客户端的朋友们都知道,获取新闻列表时有的时候他会请求网络有时候不会,查看某条新闻的时候再返回会标注已经查看的效果,接下来分析一下是如何实现的. 首先: 1.网易新闻用CoreData存储了 ...