文档章节

在Java中使用poi包解析xls文件

晨曦断罪
 晨曦断罪
发布于 2016/12/28 12:47
字数 218
阅读 1
收藏 0

请看代码:


                File file = new File("c:\\db\\test.xls");
                Workbook wb = null;
                try {
                    InputStream inputStream = new FileInputStream(file);
                    String fileName = file.getName();
                    if (fileName.endsWith("xls")) {
                        wb = new HSSFWorkbook(inputStream);// 解析xls格式
                    } else if (fileName.endsWith("xlsx")) {
                        wb = new XSSFWorkbook(inputStream);// 解析xlsx格式
                    }
                } catch (FileNotFoundException e) {
                    // TODO 自动生成 catch 块
                    e.printStackTrace();
                } catch (IOException e) {
                    // TODO 自动生成 catch 块
                    e.printStackTrace();
                }
                Vector<String> columuNames = new Vector<String>();
                Vector<Vector> tableData = new Vector<Vector>();



                int i = 0;

                for(i = 0;i < 3;i++){
                    Sheet sheet = wb.getSheetAt(i);// 第i个工作表
    我的xls里面有三张工作表               
                    Row row;
                    int firstRowIndex = sheet.getFirstRowNum();
                    int lastRowIndex = sheet.getLastRowNum();
                    row = sheet.getRow(firstRowIndex);
                    int firstCellIndex = row.getFirstCellNum();
                    int lastCellIndex = row.getLastCellNum();
                    int rowNum = lastRowIndex - firstRowIndex + 1;//行数
                    int columuNum = lastCellIndex - firstCellIndex;//列数



                    for (int k = 1; k < rowNum; k++) {
                        Vector<Object> rowData = new Vector<Object>();
                        rowData.add("");
                        for (int j = 0; j < columuNum; j++) {

                            if (sheet.getRow(i).getCell(j) == null) {
                                rowData.add(" ");
                            } else {
                                rowData.add(sheet.getRow(i).getCell(j).toString());
                            }
                        }
                        tableData.add(rowData);
                    }

                }


                final TableModel model = new DefaultTableModel(tableData, columuNames) ;
                //生成table并将其展示出来,下面的代码我就不写了

© 著作权归作者所有

晨曦断罪
粉丝 0
博文 16
码字总数 12398
作品 0
石家庄
程序员
私信 提问
使用 Apache POI 处理 Microsoft Office 文档

原文同步至:http://www.waylau.com/apache-poi-handle-microsoft-documents/ POI 概述 Apache POI 项目的使命是创造和维护 Java API 操纵各种格式的文件,其中包括基于 Office Open XML 标准...

waylau
2015/02/01
1K
3
poi操作doc文档

http://haofenglemon.iteye.com/blog/568897 关键字:POI JAVA 批注 总页数 总字符数 一:认识POI Apache POI是一个开源的利用Java读写Excel、WORD等微软OLE2组件文档的项目。最新的3.5版本有...

yunlong090614
2015/01/30
6
0
Java程序员从笨鸟到菜鸟之(一百零四)java操作office和pdf文件(二)利用POI实现数据导出excel报表

在上一篇博客中,我们简单介绍了java读取word,excel和pdf文档内容 ,但在实际开发中,我们用到最多的是把数据库中数据导出excel报表形式。不仅仅简单的读取office中的数据.尤其是在生产管理...

长平狐
2012/11/12
1K
0
使用 Apache POI 和 OpenOffice API 在 Linux 中统计 Office 文档的页数

简介: 在实际的项目开发中经常会遇到需要在不同的操作系统平台上统计 Microsoft Office 系列文档页数的要求。Apache POI 提供了一套完整的用于访问微软格式文档的 Java API。但是 Apache P...

IBMdW
2012/10/26
1K
0
Java之POI读取Excel的解决兼容性问题

在Java中,使用POI来进行excel的读取和解析是常用的一种做法;在office的excel中存在2007,2003两种不同的格式,通常情况下是以xls/xlsx的不同后缀来区分的,但用户可能不知道这个区别,所以会...

灌南高手No1
02/22
0
0

没有更多内容

加载失败,请刷新页面

加载更多

db.properties

jdbc.driver=com.mysql.cj.jdbc.Driverjdbc.url=jdbc:mysql://localhost:3306/mybatis?serverTimezone=GMT%2B8&characterEncoding=utf8&useSSL=falsejdbc.username=rootjdbc.pas......

行者终成事
28分钟前
3
0
从 Storm 到 Flink,汽车之家基于 Flink 的实时 SQL 平台设计思路与实践

在 2019 年之前,之家的大部分实时业务都是运行在 Storm 之上的。Storm 作为早期主流的实时计算引擎,凭借简单的 Spout 和 Bolt 编程模型以及集群本身的稳定性,俘获了大批用户。下图是实时计...

阿里云官方博客
28分钟前
4
0
网络安全-Day04

2.1.1 什么是SQL注入 2.1.2 注入分类 2.1.3 MySQL手工注入 2.1.4 sqlmap使用 2.1.5 总结 什么是SQL注入 SQL注入漏洞原理 什么是SQL 结构化查询语言(Structured Query Language),是一种特殊目...

Jerry1101
29分钟前
3
0
docker容器内安装yum,vim等命令,以及配置ls指令

使用国内镜像 mv /etc/apt/sources.list /etc/apt/sources.list.bakecho "deb http://mirrors.163.com/debian/ jessie main non-free contrib" >> /etc/apt/sources.listecho "deb http://......

长恭
29分钟前
3
0
超详细的MySQL8.0.17版本安装教程

下载MySQL MySQL的官网地址:https://www.mysql.com/。 如下图所示: 然后点击DOWNLOADS ==> Community,选择MySQL Community Server。如图所示: 滑到页面的最下面,找到Recommended Downl...

彩色泡泡糖
32分钟前
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部