使用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读取数据.下面介绍如何实现使用 ...
随机推荐
- springboot跨域请求接口示例
一.项目架构 二.项目内容 1.GlobalCrosConfig.java package com.config; import org.springframework.context.annotat ...
- 题解【[CQOI2017]小Q的棋盘】
切了水题十分快乐~ 首先发现本题结构一定是颗树~ 本题样例1: ..没啥用? 样例2: 这个时候我们发现:根据贪心思想我们希望每次走一步都多走一个点,如果我们选择最长链的话,在链上每走一步就多走了一个 ...
- Ubuntu的man中文包安装
apt-get install manpages-zh vi /etc/manpath.config :,$s#/usr/share/man#/usr/share/man/zh_CN#g 第一个命令: ...
- c语言中多维数组和指针的关系
如图: 执行结果: 说明:由执行结果可知,三个输出的结果相等(可能在不同的平台执行结果不相同,但三个的结果是相等的),数组multi的地址与数组multi[0]的地址相同,都等于存储的第一个整数的地址 ...
- 深入理解spring中的AOP原理 —— 实现MethodInterceptor接口,自已动手写一个AOP
1.前言 AOP是面向切面编程,即“Aspect Oriented Programming”的缩写.面对切面,就是面向我们的关注面,不能让非关注面影响到我们的关注面.而现实中非关切面又必不可少,例 ...
- 1013A.Piles With Stones
题目出处:http://codeforces.com/contest/1013/problem/A #include<iostream> using namespace std; int ...
- 论文或github中一些通用思想
(1) 云从 上海交大 ECCV2018 http://openaccess.thecvf.com/content_ECCV_2018/papers/Yao_Feng_Joint_3D_Face_EC ...
- scp 碰到的问题
将 nodejs 的全局目录scp复制到另外一台机器部署代码, 发现运行报错, 提示缺少依赖模块. 检查了很久, 没发现问题. 后来发现,软链接 scp后不再是软链接而是对应文件, 导致相对路径改变!
- 17.3.13---socket网络套接字介绍--函数和数据类型
1----Socket类型 套接字格式:socket(family,type[,protocal])使用给定的地址族,套接字类型,协议编号(默认为0)来创建套接字 socket类型 描述 socket ...
- 吴裕雄--天生自然TensorFlow高层封装:Keras-返回值
# 1. 数据预处理. import keras from keras.models import Model from keras.datasets import mnist from keras. ...