今天帮朋友写了一段用来处理EXCEL内容的程序,在这里记录下自己的学习过程。主要是对EXCEL表格中的内容做分类和统计,使用计算机来做这种重复的机械性地工作再好不过了。首先,我们需要下载一个java操作excel的开源插件,我使用的是jexcelapi(下载链接:http://120.52.73.49/nchc.dl.sourceforge.net/project/jexcelapi/jexcelapi/2.6.6/jexcelapi_2_6_6.zip)。进行解压,如果使用Eclipse等IDE需要在project->properties->Java Build Path 里面添加jxl.jar文件。至此,开发环境搭建完成。下面展开具体的操作:

  1、定义数据类型,因为每一列的数据类型不同,这里采用类数据类型来存储,采用对象数组来存储每一行的内容。

class record{private int num;private char ty;public void SetNum(String s1){this.num=Integer.parseInt(s1);}public void SetTy(String s2){this.ty=(char)s2.getBytes()[0];}public int GetNum(){return num;} public char GetTy(){return ty;}
}
record a[] = new record[row];
for(int i=0;i<row;i++)a[i]= new record();

View Code

  注意代码中对对象数组的每一个元素初始化的过程,否则会出现java.lang.NullPointerException的异常抛出。

  2、连接到EXCEL,获取工作空间,我们用到了Workbook和Sheet类,在之前导入的jxl包里面。

//创建一个读取excel的容器
Workbook book = Workbook.getWorkbook(new File("G:/test123.xls"));
//读取第一页
Sheet sheet = book.getSheet(0);
//读取电子表格和列数和行数
int col = sheet.getColumns();
int row = sheet.getRows();

View Code

  3、读取每一个单元格的内容。将单元格的数据读取到数组中之后,接下来的工作可根据具体情况完成实际操作。

for(int i=0;i<row;i++){//第一个参数代表列,第二个参数代表行Cell cell1=sheet.getCell(0, i);Cell cell2=sheet.getCell(1, i);a[i].set_num(cell1.getContents());a[i].set_ty(cell2.getContents());
}

View Code

  4、根据需求完成相关操作后,需要将数据写会Excel表格中,我们用到了WritableWorkbook和WritableSheet两个类。

//创建一个可写excel文件
WritableWorkbook bookw = Workbook.createWorkbook(new File("G:/testwtb.xls"));
//写入excel的第一页
WritableSheet sheetw = bookw.createSheet("first sheet",0);
for(int i=0;i<=index;i++){Number n = new Number(0,i,x[i]);sheetw.addCell(n);Number n1 = new Number(1,i,y[i]);sheetw.addCell(n1);Number n2 = new Number(2,i,z[i]);sheetw.addCell(n2);Number n3 = new Number(3,i,xx[i]);sheetw.addCell(n3);
}
bookw.write();
bookw.close();

View Code

至此,所有操作完成。

转载于:https://www.cnblogs.com/triplewood/p/5116757.html

Java 操作 EXCEL相关推荐

  1. java excel读取操作,Java 操作 Excel (读取Excel2003 2007,Poi兑现)

    Java 操作 Excel (读取Excel2003 2007,Poi实现) 一. Apache POI 简介( http://poi.apache.org/) 使用Java程序读写Microsoft ...

  2. java excel类库,jExcelApi Java 操作 Excel 的类库

    jExcelApi Java 操作 Excel 的类库 Java Excel API(JXL)是一个成熟,开源的用来操作Excel电子表格的Java类库,支持读取,修改,写入等操作.这个项目基于GPL ...

  3. java excel api 下载文件_Java-Excel Java操作Excel POI(Jakarta POI API) - 下载 - 搜珍网

    Java操作Excel/Jakarta POI API/data/Jakarta POI API.doc Java操作Excel/Jakarta POI API/jar/poi-3.0.2-FINAL ...

  4. java操作Excel、PDF文件

    java操作Excel.PDF文件 下面这些是在开发中用到的一些东西,有的代码贴的不是完整的,只是贴出了关于操作EXCEL的代码: jxl是一个*国人写的java操作excel的工具, 在开源世界中, ...

  5. java操作excel表

    文章分类:Java编程 http://developers.sun.com.cn/blog/functionalca/entry/java读写excel简介 JAVA EXCEL API简介 Java ...

  6. JAVA操作Excel时文字自适应单元格的宽度设置方法

    使用JAVA操作Excel通常都使用JXL,方法很简单网上也有很多的教程,然后往往一些细节性的问题却导致我们这些Programmer苦恼不已.这两天帮一个朋友做一个Excel表格自动生成的小软件,就遇 ...

  7. java excel 插入新行_POI ,Java 操作 Excel 實現行的插入(insert row)

    POI ,Java 操作 Excel 實現行的插入(insert row) 前幾天,正在做一個項目,主要用 POI 來操作 Excel 其中,要使用一個,插入功能.主要是因為從數據庫,返回結果集(數據 ...

  8. Java操作Excel三种方式POI、Hutool、EasyExcel

    Java操作Excel三种方式POI.Hutool.EasyExcel 1. Java操作Excel概述 1.1 Excel需求概述 1.2 Excel操作三种方式对比 2. ApachePOIExc ...

  9. Java操作Excel之Excel文件的下载

    1.有的时候在Web应用会有下载Excel的需求,现分享下后台实现下载Excel文件的代码 @RequestMapping(value = "/exportExcel", meth ...

  10. Java 操作excel表格 - JXL(Java excel api)

    Java 操作excel表格 Java 操作 Excel 最常用的就是JXL(Java excel api)和POI,用起来挺简单的,不过相应的其功能也并非很强大,够用就行! 首先,下载jxl.jar ...

最新文章

  1. 万物皆为向量:在线向量召回工程服务化实践
  2. PyQt:成功解决PyQt4升级到PyQt5改变的函数或方法
  3. Web前端开发人员和设计师必读文章推荐【系列六】
  4. 东芝半导体-三极管和功率管-元器件后缀说明解释-L3F
  5. 如何对oracle数据库进行监控检查
  6. Android 功耗(9)---MTK功耗基础知识
  7. was连接oracle rac集群,Oracle 学习之RAC(九) 集群负载均衡及故障转移
  8. 95-40-060-java.util.concurrent-ConcurrentSkipListMap
  9. matlab 加随机数,随机数加上100:Matlab
  10. 利用TTL转USB串口在两台PC机间进行文件传输
  11. 科技粉必看的10部电影
  12. 消息系统(ActiveMQ)
  13. 量子计算机是否存在相对论,从量子到宇宙——颠覆人类认知的科学之旅
  14. 小学计算机水平测试论坛,热烈祝贺我校学生在市计算机水平测试中再创佳绩
  15. 前端如何处理十万级别的大量数据
  16. 【观察】亚信科技:“飞轮效应”背后的数智化创新“延长线”
  17. 中国科学院大学计算机学院夏令营,2019年中国科学院大学生数学夏令营招募通知...
  18. GET和 POST非常浅薄的理解
  19. Java第二天笔记01——变量和运算符
  20. 教师很有用的参考网站

热门文章

  1. appium java动态等待_appium封装显示等待Wait类和ExpectedCondition接口
  2. pandas多列聚合
  3. GRAPH ATTENTION NETWORKS 学习翻译
  4. MATLAB 距离函数及用法
  5. Machine Learning Basics(要点)
  6. 克服密集恐惧症,目标检测代你实现钢筋精准计数
  7. 从零开始使用Nadam进行梯度下降优化
  8. SQLServer数据库中截取字符串的常用方法
  9. 相似文档查找算法之 simHash
  10. 没有tools.jar包的解决办法