使用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 实现递归实现tree(2)
import com.google.common.collect.Lists; import org.springframework.cglib.beans.BeanCopier; import ja ...
- 91.一次性处理多条数据的方法:bulk_create,update,delete
(1)bulk_create: 可以一次性的创建多个对象 示例代码如下: from django.http import HttpResponse from .models import Pulish ...
- memset的常见用法
头文件 <cstring> 描述 因为memset函数按照字节填充,所以一般memset只能用来填充char型数组 ------------------------------------ ...
- JAVA内存分配-通俗讲解
Java的内存分配上,主要分4个块: 一块是用来装代码的,就是编译的东西. 一块是用来装静态变量的,例如用static关键字的变量,例如字符串常量. 一块是stack,也就是栈,是用来装变量和引用类型 ...
- str_replace用法
语法 str_replace(find,replace,string,count) 参数 描述 find 必需.规定要查找的值. replace 必需.规定替换 find 中的值的值. string ...
- UVA 125 统计路径条数 FLOYD
这道题目折腾了我一个下午,本来我的初步打算是用SPFA(),进行搜索,枚举出发点,看看能到达某个点多少次,就是出发点到该点的路径数,如果出现环,则置为-1,关键在于这个判环过程,如果简单只找到某个点是 ...
- TF利用分布式队列控制线程
假设分布式任务包含n个ps节点, m个worker节点. m, n>0. 希望所有worker的任务结束后,所有节点才终止. 方法: 借助队列tf.FIFOQueue实现. 原理: tf.FIF ...
- SpringMVC在使用JSON时报错信息为:Content type 'application/json;charset=UTF-8' not supported
直接原因是:我的(maven)项目parent父工程pom.xml缺少必要的三个jar包依赖坐标. 解决方法是:在web子模块的pom.xml里面添加springMVC使用JSON实现AJAX请求. ...
- 初次运行Git前的配置
初次运行Git前的配置 一.初次运行 Git 前的配置 一般在新的系统上,我们都需要先配置下自己的 Git 工作环境.配置工作只需一次,以后升级时还会沿用现在的配置.当然,如果需要,你随时可以用相同的 ...
- Python——气象数据分析
将对意大利北部沿海地区的气象数据进行分析与可视化.我们在实验过程中先会运用 Python 中 matplotlib 库的对数据进行图表化处理,然后调用 scikit-learn 库当中的的 SVM 库 ...