java io导出excel表格_Java IO 导入导出Excel表格

1、将excel导入到内存

1、 调用工作簿Workbook的静态方法getWorkbook(),获得工作簿Workbook对象

InputStream in = new FileInputStream(file);

Workbook wb = Workbook.getWorkbook(in);

2、 获取Excel表中的工作表格Sheet

3、 获取行、列

sheet.getRows();

sheet.getColumns();

4、 读取单元格内容

String result = cell.getContents();

5、 关闭工作簿Workbook

wb.close();

代码演示

// 实现读学生文件,将读出的信息存放于student集合中

public List ReadFromExcel(String fileName) {

List list = new ArrayList();

File file = new File(fileName);

try {

InputStream in = new FileInputStream(file);

Workbook wb = Workbook.getWorkbook(in);

Sheet s = wb.getSheet(0);

for(int i = 1; i < s.getRows(); i++) //第一行不要

{

Cell[] row = s.getRow(i);

Student student = new Student(row[0].getContents(), row[1].getContents(), //填充数据

row[2].getContents(), Float.parseFloat(row[3].getContents()),

Float.parseFloat(row[4].getContents()), Float.parseFloat(row[5].getContents()));

//由于读取的数据全部都是String 类型所以要转换成Float类型

student.setTotalScore(student.getEnglish()+student.getJava()+student.getMath());

student.setAverage(student.getTotalScore()/3);

list.add(student);

}

} catch (FileNotFoundException e) {

// TODO Auto-generated catch block

e.printStackTrace();

} catch (BiffException e) {

// TODO Auto-generated catch block

e.printStackTrace();

} catch (IOException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

return list;

}

2、将数据写到excel表格中

1、 获取可写入工作簿WritableWorkbook对象

WritableWorkbook wwb = Workbook.createWorkbook(filename);

2、 创建工作表格Sheet名称

WritableSheet sheet = book.createSheet("Sheet1",0);

3、 将内容放入对应的行和列

sheet.addCell(new Label(j, i, info);//j表示列,i表示行,info表示写入的内容

//在Excel中第一个参数是列,第二个参数是行,如A1

4、 写入并关闭工作簿Workbook

wwb.write();

wwb.close();

代码演示

// 将集合中的数据写入到excel文件中

public void WriteExcel(List list, String fileName) {

File file = new File(fileName);

try {

OutputStream out = new FileOutputStream(file);

WritableWorkbook wwb = Workbook.createWorkbook(out);

WritableSheet ws = wwb.createSheet("Sheet1", 0);

String info[] = {"id","name","gender","java","english","math"};

for(int j=0;j<6;j++){

Label label = new Label(j, 0, info[j]);

ws.addCell(label);

}

for(int i = 0;i < list.size();i++)

{

Label l = new Label(0, i+1, list.get(i).getId());//在Excel中,第一个参数表示列,第二个表示行

Label l2 = new Label(1, i+1, list.get(i).getName());

Label l3 = new Label(2, i+1, list.get(i).getGender());

Label l4 = new Label(3, i+1, String.valueOf(list.get(i).getJava()));

Label l5 = new Label(4, i+1, String.valueOf(list.get(i).getEnglish()));

Label l6 = new Label(5, i+1, String.valueOf(list.get(i).getMath()));

ws.addCell(l);

ws.addCell(l2);

ws.addCell(l3);

ws.addCell(l4);

ws.addCell(l5);

ws.addCell(l6);

}

wwb.write();//从内存中写入文件中

wwb.close();//关闭资源,释放内存

} catch (FileNotFoundException e) {

// TODO Auto-generated catch block

e.printStackTrace();

} catch (IOException e) {

// TODO Auto-generated catch block

e.printStackTrace();

} catch (RowsExceededException e) {

// TODO Auto-generated catch block

e.printStackTrace();

} catch (WriteException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

}

Java代码导入导出 Excel 表格最简单的方法

import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.FileOutputStrea ...

Java中导入导出Excel -- POI技术

一.介绍: 当前B/S模式已成为应用开发的主流,而在企业办公系统中,常常有客户这样子要求:你要把我们的报表直接用Excel打开(电信系统.银行系统).或者是:我们已经习惯用Excel打印.这样在我们实 ...

PHP导入导出excel表格图片(转)

写excel的时候,我用过pear的库,也用过pack压包的头,同样那些利用smarty等作的简单替换xml的也用过,csv的就更不用谈了.呵呵.(COM方式不讲了,这种可读的太多了,我也写过利用wp ...

PHP导入导出excel表格图片的代码和方法大全

基本上导出的文件分为两种: 1:类Excel格式,这个其实不是传统意义上的Excel文件,只是因为Excel的兼容能力强,能够正确打开而已.修改这种文件后再保存,通常会提示你是否要转换成Excel文件 ...

Java利用POI实现导入导出Excel表格示例代码

转自:https://www.jb51.net/article/95526.htm 介绍 Jakarta POI 是一套用于访问微软格式文档的Java API.Jakarta POI有很多组件组成,其 ...

Java Annotation 应用 -- 导出Excel表格

相关知识链接: Introspector(内省) POI 1.声明注解 package com.ciic.component.excel; import java.lang.annotation.El ...

Java实现导入导出Excel:POI和EasyExcel

文章与CSDN同步,欢迎访问:https://blog.csdn.net/qq_40280582/article/details/107300081 代码地址:https://gitee.com/il ...

Java POI导入导出Excel

1.异常java.lang.NoClassDefFoundError: org/apache/poi/UnsupportedFileFormatException 解决方法: 使用的poi的相关jar ...

java基础篇 -- 导出excel表格数据

本篇文章基于java把数据库中的数据以Excel的方式导出,欢迎各位大神吐槽: 1.基于maven jar包引入如下: net.so ...

随机推荐

iOS - UIWindow

前言 NS_CLASS_AVAILABLE_IOS(2_0) @interface UIWindow : UIView @available(iOS 2.0, *) public class UIWi ...

Does not contain a valid host;port authority解决方法

ERRORorg.apache.hadoop.hdfs.server.namenode.NameNode: java.lang.IllegalArgumentException: Does not c ...

[Git] MAC上Git初探

1.基本设置,包括用户名.邮箱.编辑工具.查看设置.帮助等 $ git config --global user.name "John Doe" $ git config --gl ...

sql union代替or

---原始SQL SQL> SELECT deptno FROM emp WHERE empno = 7788 OR job = 'SALESMAN' ORDER BY 1; DEPTNO -- ...

.net使用cefsharp开源库开发chrome

.net使用cefsharp开源库开发chrome 离上篇写介绍pc端的混合开发和为什么以cefsharp入手研究混合开发已经有好几天,一直忙,抽不出时间继续写怎么搭建cefsharp开发环境.其实没 ...

Python基础知识学习_Day3

一.字典用法 字典是一种key-value数据类型,通过key获取具体value的内容,字典的特性是无序.去重. 增删改查用法如下: 1.1基本增删改查操作 name = {"," ...

Django之路: 模版篇

一.Django 模版  上章是介绍简单的把django.http.HttpResponse的内容显示到网页上,下面就介绍以下如何使用渲染模版的方法来显示内容.本节代码是基于Django 1.8,但 ...

基于CDIF实现的——API在线自动化测试

传统的测试工具在测试一个API的时候,必须手动填写这个API所需要接收的所有信息,比如一个查询航班动态的API,他接收两个输入字段,一个叫flight, 一个叫date,那么测试这个API的用户,需要 ...

c# xml操作(一)

c# xml操作(一) 此博文包含图片 (-- ::)转载▼ 标签: 杂谈 分类: c# 同样是增,删,改,查四种操作.现在我们就详细介绍一下增和删两种操作.看下面的一个xml示例:

《剑指offer》 包含min函数的栈

本题来自 包含min函数的栈 题目: 定义栈的数据结构,请在该类型中实现一个能够得到栈中所含最小元素的min函数(时间复杂度应为O(1)). 思路: 举例子让抽象问题具体 ...

你可能感兴趣的:(java,io导出excel表格)