使用jxl操作之一: 实现对Excel简单读写操作
项目目录树

对象类UserObject
UserObject.java
package com.dlab.jxl; public class UserObject { private String userName; private String age; private String address; public String getUserName() {
return userName;
} public void setUserName(String userName) {
this.userName = userName;
} public String getAge() {
return age;
} public void setAge(String age) {
this.age = age;
} public String getAddress() {
return address;
} public void setAddress(String address) {
this.address = address;
} }
Excel简单写操作类ExcelWriter
ExcelWriter.java
package com.dlab.jxl;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.OutputStream;
import java.util.List;
import jxl.Workbook;
import jxl.write.Label;
import jxl.write.WritableSheet;
import jxl.write.WritableWorkbook;
import jxl.write.WriteException;
public class ExcelWriter {
private OutputStream os = null;
public ExcelWriter(String excelPath) throws FileNotFoundException{
this.os = new FileOutputStream(excelPath);
}
public boolean excelWrite(List list){
try {
//创建一个可写的Workbook
WritableWorkbook wwb = Workbook.createWorkbook(os);
//创建一个可写的sheet,第一个参数是名字,第二个参数是第几个sheet
WritableSheet sheet = wwb.createSheet("第一个sheet", 0);
for(int i=0; i<list.size(); i++){
UserObject user = (UserObject)list.get(i);
//创建一个Label,第一个参数是x轴,第二个参数是y轴,第三个参数是内容,第四个参数可选,指定类型
Label label1 = new Label(0, i, user.getUserName());
Label label2 = new Label(1, i, user.getAddress());
Label label3 = new Label(2, i, user.getAge());
//把label加入sheet对象中
sheet.addCell(label1);
sheet.addCell(label2);
sheet.addCell(label3);
}
//保存到Workbook中
wwb.write();
//只有执行close时才会写入到文件中,可能在close方法中执行了io操作
wwb.close();
return true;
} catch (IOException e) {
e.printStackTrace();
} catch (WriteException e) {
e.printStackTrace();
}
return false;
}
}
Excel简单读操作类ExcelReader
ExcelReader.java
package com.dlab.jxl;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.InputStream;
import jxl.Sheet;
import jxl.Workbook;
import jxl.read.biff.BiffException;
public class ExcelReader {
private InputStream is = null;
public ExcelReader(String excelPath) throws FileNotFoundException{
this.is = new FileInputStream(excelPath);
}
public void excelReader(){
try {
Workbook book = Workbook.getWorkbook(is);
Sheet sheet = book.getSheet(0);
for(int i=0; i<sheet.getRows(); i++){
for(int j=0; j<sheet.getColumns(); j++){
System.out.print(sheet.getCell(j, i).getContents() + " ");
if(j == sheet.getColumns() - 1){
System.out.println();
}
}
}
} catch (BiffException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
}
测试类ExcelTest
package com.dlab.jxl;
import java.io.FileNotFoundException;
import java.util.ArrayList;
import java.util.List;
public class ExcelTest {
public static void main(String[] args) {
List userList = new ArrayList();
for(int i=0; i<100; i++){
UserObject user = new UserObject();
user.setUserName("用户名称" + Integer.valueOf(i));
user.setAddress("地址" + Integer.valueOf(i));
user.setAge("年龄" + Integer.valueOf(i));
userList.add(user);
}
try {
ExcelWriter ew = new ExcelWriter("ExcelWriter.xls");
ew.excelWrite(userList);
} catch (FileNotFoundException e) {
e.printStackTrace();
}
try {
ExcelReader er = new ExcelReader("ExcelWriter.xls");
er.excelReader();
} catch (FileNotFoundException e) {
e.printStackTrace();
}
}
}
测试结果


使用jxl操作之一: 实现对Excel简单读写操作的更多相关文章
- 使用POI来实现对Excel的读写操作
事实上我感觉直接贴代码就好了.代码里面差点儿做到每一行一个凝视.应该看起来会比較简单 代码托管在github上:https://github.com/chsj1/ExcelUtils package ...
- 通过vb.net 和NPOI实现对excel的读操作
通过vb.net 和NPOI实现对excel的读操作,很久很久前用过vb,这次朋友的代码是vb.net写的需要一个excel的操作, 就顾着着实现功能了,大家凑合着看吧 Option Explicit ...
- 利用C#实现对excel的写操作
一.COM interop 首先我们要了解下何为COM Interop,它是一种服务,可以使.NET Framework对象能够与COM对象通信.Visual Studio .NET 通过引入面向公共 ...
- 使用JXL.jar实现JAVA对EXCEL的读写操作
简介: jxl.jar是通过java操作excel表格的工具类库 jxl操作excel包括对象Workbook(工作簿),Sheet(工作表) ,Cell(单元格). 一个excel就对应一个Work ...
- Apache POI 实现对 Excel 文件读写
1. Apache POI 简介 Apache POI是Apache软件基金会的开放源码函式库. 提供API给Java应用程序对Microsoft Office格式档案读和写的功能. 老外起名字总是很 ...
- JAVA-----基于POI实现对Excel导入
在日常项目开发中, 数据录入和导出是十分普遍的需求,因此,导入导出也成为了开发中一个经典的功能.数据导出的格式一般是excel或者pdf,而批量导入的信息一般是借助excel来减轻工作量,提高效率. ...
- Python中实现对list做减法操作介绍
Python中实现对list做减法操作介绍 这篇文章主要介绍了Python中实现对list做减法操作介绍,需要的朋友可以参考下 问题描述:假设我有这样两个list, 一个是list1,list1 = ...
- 使用Python对Excel进行读写操作
学习Python的过程中,我们会遇到Excel的读写问题.这时,我们可以使用xlwt模块将数据写入Excel表格中,使用xlrd模块从Excel中读取数据.下面我们介绍如何实现使用Python对Exc ...
- Python—对Excel进行读写操作
学习Python的过程中,我们会遇到Excel的读写问题.通过搜索得知,我们可以使用xlwt module将数据写入Excel表格,使用xlrd module从Excel读取数据.下面介绍如何实现使用 ...
随机推荐
- java实现图片文件与Base64的互转
通过form表单上传图片时,有时候web容器对文件大小的限制会影响我们上传.这时,前端页面可以考虑将图片转换成base64串来实现上传. 图片与Base64的互转,其实就是利用了文件流与Base64的 ...
- python 网络请求、下载
#获取qq群中的群成员qq号import requestsmembers = []url = 'https://qun.qq.com/cgi-bin/qun_mgr/search_group_memb ...
- ServiceComb 集成 Shiro 实践|火影专场发布
Shiro简介 Apache Shiro是一款功能强大.易用的轻量级开源Java安全框架,它主要提供认证.鉴权.加密和会话管理等功能.Spring Security可能是业界用的最广泛的安全框架,但是 ...
- Nginx模块-ngx_http_mirror_module-流量复制【转】
Nginx流量复制# 需求# 将生产环境的流量拷贝到预上线环境或测试环境,这样做有很多好处,比如: 可以验证功能是否正常,以及服务的性能: 用真实有效的流量请求去验证,又不用造数据,不影响线上正常访问 ...
- c语言中命令行参数argc,argv[]详解
main(int argc,char *argv[ ]) 1.argc为整数 2.argv为指针的指针(可理解为:char **argv or: char *argv[] or: char argv[ ...
- Linux 笔记(自用)
一,常用工具 1. 常用浏览器 w3m links lynx 都可以用 apt-get install *** 安装,访问方式都是 w3m/links/lynx www.baidu.com 的形式 2 ...
- 面向对象 part5
构造函数模式与原型模式结合 function Person(name) = { this.name = name this.friends = ["a", "b" ...
- ansible puppet saltstack三款自动化运维工具的对比
一.基础介绍 ansible基础介绍可参考:http://www.linuxidc.com/Linux/2017-12/149671.htm puppet基础介绍可参考:http://www.linu ...
- Python3+Pycharm+PyQt5环境搭建
操作系统:Windows 10 Python版本:3.7及以上版本均可 PyCharm:PyCharm 2019.3 1.安装 PyQt5 及其拓展工具. pip install pyqt5 pip ...
- [学习笔记]连通分量与Tarjan算法
目录 强连通分量 求割点 求桥 点双连通分量 模板题 Go around the Labyrinth 所以Tarjan到底怎么读 强连通分量 基本概念 强连通 如果两个顶点可以相互通达,则称两个顶点强 ...