搜档网
当前位置:搜档网 › jxl对excel文件内容导入导出

jxl对excel文件内容导入导出

jxl对excel文件内容导入导出
jxl对excel文件内容导入导出

1.当然我们使用JXL主要是用它来动态读写Excel文件。现在就来看看JXL在对Excel的读和写上都提供了那些支持。

先来看看Excel文件中都有写上面对象

1 文件对象2工作簿对象3 单元格对象。

相应的在JXL中就有Workbook,Sheet ,Cell 。通过这三个对象我们就可以实现Excel文件的读取工作。

我们先想想一下读取步骤,不管是什么样的Excel操作框架必定都要经历

1选取Excel文件,2选择工作簿,3选择Cell,4读取信息。

那么现在就可以看看JXL中这四步骤如何体现:

Workbook workbook = Workbook.getWorkbook(new File("myfile.xls")); //通过Workbook的静态方法getWorkbook选取Excel文件

int sheetsnumber = workbook.getNumberOfSheets();//获取工作薄个数

Sheet sheet = workbook.getSheet(0); //通过Workbook的getSheet方法选择第一个工作簿(从0开始)

int columnum = sheet.getColumns(); // 得到列数

int rownum = sheet.getRows(); // 得到行数

Cell c2 = sheet.getCell(columnum , rownum ); //通过Sheet方法的getCell方法选择位置为C2的单元格(两个参数都从0开始)

String stringc2 = c2.getContents(); //通过Cell的getContents方法把单元格中的信息以字符的形式读取出来

可以看到正是刚才所说的四个步骤。

我们都知道Excel单元格是有格式的,那么这些信息如何取得。

Cell提供了一个getType方法能够返回单元格的类型信息,同时JXL提供了一个CellType类用来预设Excel中的类型信息,而且JXL提供了一些Cell类的子类用来分别用来表示各种类型的单元格,如LabelCell,NumberCell,DateCell分别表示字符、数值、日期类型的单元格。所以我们可以这样写:if (c2.getType() == CellType.NUMBER)

{

NumberCell nc = (NumberCell) c2;

numberb2 = nc.getValue();

}

最后不要忘记关闭workbook以释放资源:

workbook.close();

2.与读取Excel工作表相似,首先要使用Workbook类的工厂方法创建一个可写入的工作薄(Workbook)对象,这里要注意的是,只能通过API提供的工厂方法来创建Workbook,而不能使用WritableWorkbook 的构造函数,因为类WritableWorkbook的构造函数为protected类型。

API提供了两种方式来处理可写入的输出流,一种是直接生成本地文件,如果文件名不带全路径的话,缺省的文件会定位在当前目录,如果文件名带有全路径的话,则生成的Excel文件则会定位在相应的目录;另外一种是将Excel对象直接写入到输出流,例如:用户通过浏览器来访问Web服务器,如果HTTP头设置正确的话,浏览器自动调用客户端的Excel应用程序,来显示动态生成的Excel电子表格。

接下来就是要创建工作表,创建工作表的方法与创建工作薄的方法几乎一样,同样是通过工厂模式方法获得相应的对象,该方法需要两个参数,一个是工作表的名称,另一个是工作表在工作薄中的位置,参考下面的代码片段:

<%@ page language="java" pageEncoding="GBK"%>

response.setContentType("application/download");

response.setHeader("Content-Disposition","attachment;filename=totalExcel.xls");

ServletOutputStream sos = response.getOutputStream();

WritableWorkbook wwb=null;

wwb = Workbook.createWorkbook(sos);

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

Label lab = new Label(0, 0, "序号");

ws.addCell(lab);

lab = new Label(1, 0, "用户名");

ws.addCell(lab);

lab = new Label(2, 0, "性别");

ws.addCell(lab);

………..

wwb.write();

wwb.close();

sos.flush();

sos.close();

总结一下:三个对象,四个步骤,注意格式。就可以轻松的从Excel文件中读写数据.

java导入导出excel操作

java导入导出excel操作(jxl) Java解释Excel数据(包的使用) 关键字: java excel 包 下载地址: 真实下载地址: 网站上对它的特征有如下描述: ● 支持Excel 95-2000的所有版本 ● 生成Excel 2000标准格式 ● 支持字体、数字、日期操作 ● 能够修饰单元格属性 ● 支持图像和图表 应该说以上功能已经能够大致满足我们的需要。最关键的是这套API是纯Java 的,并不依赖Windows系统,即使运行在Linux下,它同样能够正确的处理Excel 文件。另外需要说明的是,这套API对图形和图表的支持很有限,而且仅仅识别PNG格式。 搭建环境 将下载后的文件解包,得到,放入classpath,安装就完成了。 基本操作 一、创建文件 拟生成一个名为“测试数据.xls”的Excel文件,其中第一个工作表被命名为“第一页”,大致效果如下: Java代码 /* * Created on Dec 30, 2007 * * To change the template for this generated file go to * Window>Preferences>Java>Code Generation>Code and Comments */ package ; import .*; import jxl.*; import .*;

/** * @author Ken * * To change the template for this generated type comment go to * Window>Preferences>Java>Code Generation>Code and Comments */ public class CreateXLS { public static void main(String[] args) { try { WritableWorkbook book = (new File("d:/")); 0 means this is 1st page. WritableSheet sheet = ("Sheet_1", 0); value is "test". Label label = new Label(0, 0, "test"); (label); WARN:necessarily use integrated package-path, otherwise will be throws path -error. value is . number = new0, ; (number); (); (); } catch (Exception e) { (); } } } 编译执行后,会在当前位置产生一个Excel文件。 二、读取文件 以刚才我们创建的Excel文件为例,做一个简单的读取操作,程序代码如下:

Java实现Excel数据导入和导出的研究与应用

Java实现Excel数据导入导出的研究与应用 王晶晶 北京邮电大学网络教育学院(100088) E-mail:bolalisi_double@https://www.sodocs.net/doc/1a2408699.html, 摘要:Excel能够通过功能强大的工具将杂乱的数据组织成有用的信息,然后分析、交流和共享所得到的结果。很多系统由于存在着大量需要处理的数据,Excel本身强大的功能使得它成为处理分析这些数据首选的工具。随着Java语言成为越来越多系统的开发语言,利用Java进行Excel的数据导入导出在很多系统中都发挥着重要的作用,本文主要介绍了Jxl API的主要功能,并结合实例探讨了利用Jxl API操作Excel数据的导入和导出。 关键字:Java;Excel; Jxl API;数据导入导出 中图分类号:TP312文献标识码:A 1. 引言 MS的电子表格(Excel)是Office的重要成员,是保存统计数据的一种常用格式。在一个Java应用中,将一部分数据生成Excel格式,是与其他系统无缝连接的重要手段。在远程网络教学系统中,利用Excel表格统计学生的作业考试情况信息,便于老师了解学生的学习情况,分析教学效果,制定教学计划。所以,用Java操作Excel表格,导出相关的信息对于远程网络教育系统有着的很重要的意义。 在开源世界中,有两套比较有影响的API提供Excel数据导入导出的功能,一个是POI,一个是jExcelAPI。本文结合基于J2EE开发的多媒体教学系统中提供的将学生作业信息导出到Excel表格中的实例,详细阐述了利用JAVA开发的jExcelAPI操作excel的方法。 2. Jxl 简介 2.1 Java语言简介 Java语言具有面向对象、与平台无关、安全、稳定和多线程等优良特性,是目前软件设计中极为强大的编程语言[1]。它具有以下一些特点[2]:简单,面向对象,分布式,解释执行,鲁棒,安全,体系结构中立,可移植,高性能,多线程以及动态性。 2.2什么是Jxl Java Excel是一开放源码项目,通过它Java开发人员可以读取Excel文件的内容、创建新的Excel文件、更新已经存在的Excel文件。使用该 API非Windows操作系统也可以通过纯Java应用来处理Excel数据表。因为是使用Java编写的,所以我们在Web应用中可以通过JSP、 Servlet来调用API实现对Excel数据表的访问。 Jxl发布的稳定版本是V2.0,提供以下功能: 从Excel 95、97、2000等格式的文件中读取数据[3]; 读取Excel公式(可以读取Excel 97以后的公式)[3];

Java读取Excel文件的几种方法

Java读取Excel文件的几种方法 最近单位有个项目需要读取excel文件的内容,特别对java读取excel文件的方法做了一点学习,也为了其他人以后能更简单地开发,少走弯路,特写此文,以下程序经过了我的测试,可以保证程序可用,如果你照搬都不行,可能是你的环境有问题。 读取excel文件的常用开源免费方法有以下几种: JDBC-ODBC Excel Driver jxl.jar jcom.jar poi.jar 下面分别对这几种方法分别进行探讨 1、JDBC-ODBC Excel Driver 这种方法是将excel看成是数据库进行操作,使用SQL Select语句即可 查询excel表格。优点是:不需要第三方的jar包。 如下表样 首先在控制面板进行数据源ODBC登记 具体方法如下:

下面就是代码了。 package xuzhe;

import java.io.*; import java.sql.*; //java xuzhe.ExcelJDBC public class ExcelJDBC { public static void main(String[] args) throws SQLException{ Connection con = null; try{ Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); con = DriverManager.getConnection( "jdbc:odbc:ExcelJDBC" ); Statement st = con.createStatement(); ResultSet rs = st.executeQuery( "Select * from [Sheet1$]" ); ResultSetMetaData rsmd = rs.getMetaData(); int numberOfColumns = rsmd.getColumnCount(); System.out.println ("表格列数"+numberOfColumns ); System.out.println( rsmd.getColumnName(1)+ "," + rsmd.getColumnName(2) + "," + rsmd.getColumnName(3)); while (rs.next()) { for (int i = 1; i <= numberOfColumns; i++) { if (i > 1) System.out.print(", "); String columnValue = rs.getString(i); System.out.print(columnValue); } System.out.println(""); } rs.close(); st.close(); } catch(Exception ex) { System.err.print("Exception: "); System.err.println(ex.getMessage()); } finally { con.close(); } } } 执行结果如下:

用JAVA Excel API 实现对Excel表格的读写更新

http:https://www.sodocs.net/doc/1a2408699.html, package myexceltest; import jxl.*; import Java.io.*; import jxl.write.*; /** * java读取Excel表格,拷贝、更新Excel工作薄 * Description: Java开发人员可以读取Excel文件的内容,更新Excel工作薄,开发人员 * 也可以用程序生成新的Excel表格,不过我觉得在我们工作中几乎没有这方面需求,我 * 就不再列出来了,如果有哪位同事需要的话,我再把程序写出来 * * Copyright: Copyright (c) KongZhong Corparation 2005 * 程序开发环境为jb9 * @author 张丽鹏 * @version 1.0 */ public class Test1 { public static void main(String[] args) { jxl.Workbook rwb = null; try{ //构建Workbook对象, 只读Workbook对象 //直接从本地文件创建Workbook //从输入流创建Workbook InputStream is = new FileInputStream("D:/jb9Test/MyExcelTest/Book1.xls"); rwb = Workbook.getWorkbook(is); //Sheet(术语:工作表)就是Excel表格左下角的Sheet1,Sheet2,Sheet3但在程序中 //Sheet的下标是从0开始

JXL文档说明 JAVA EXCEL API 说明手册

Java excel API说明手册 作者:Rubber 整理:calf 使用Windows操作系统的朋友对Excel(电子表格)一定不会陌生,但是要使用Java语言来操纵Excel 文件并不是一件容易的事。在Web应用日益盛行的今天,通过Web来操作Excel文件的需求越来越强烈,目前较为流行的操作是在JSP或Servlet中创建一个CSV(comma separated values)文件,并将这个文件以MIME,text/csv类型返回给浏览器,接着浏览器调用Excel并且显示CSV文件。这样只是说可以访问到Excel文件,但是还不能真正的操纵Excel文件,本文将给大家一个惊喜,向大家介绍一个开放源码项目,Java Excel API,使用它大家就可以方便地操纵Excel文件了。 JAVA EXCEL API简介 Java Excel是一开放源码项目,通过它Java开发人员可以读取Excel文件的内容、创建新的Excel 文件、更新已经存在的Excel文件。使用该API非Windows操作系统也可以通过纯Java应用来处理Excel 数据表。因为是使用Java编写的,所以我们在Web应用中可以通过JSP、Servlet来调用API实现对Excel 数据表的访问。 现在发布的稳定版本是V2.0,提供以下功能: ?从Excel95、97、2000等格式的文件中读取数据; ?读取Excel公式(可以读取Excel97以后的公式); ?生成Excel数据表(格式为Excel97); ?支持字体、数字、日期的格式化; ?支持单元格的阴影操作,以及颜色操作; ?修改已经存在的数据表; 现在还不支持以下功能,但不久就会提供了: 1.不能够读取图表信息; 2.可以读,但是不能生成公式,任何类型公式最后的计算值都可以读出; 应用示例 1从Excel文件读取数据表 Java Excel API既可以从本地文件系统的一个文件(.xls),也可以从输入流中读取Excel数据表。读取Excel数据表的第一步是创建Workbook(术语:工作薄),下面的代码片段举例说明了应该如何操作:(完整代码见ExcelReading.java)

JXL操作EXCEL的常用类方法参数解析

1. JXL操作EXCEL的常用类方法参数解析 Excel的生成方式其实很简单,主要包括几个大的类 首先最重要的几个类就是WritableWorkbook,这个类代表的就是一个Excel文档,使用过Excel文档的都应该知道Excel文档的组成,都是由一个一个的sheet组成的,那么这个sheet对应的java类就是WritableSheet。实际上就是这两个大类的组成,其他的一些小的类都是为了修饰WritableSheet里的内容的。 这些修饰类中用的最多的就是WritableFont , WritableCellFormat,以及Label类,这三个类构成了修WritableSheet的核心。 <一>抽象类Workbook 该类相当于是一个工具类用于生成Excel 方法: (1)createWorkbook(File file) createWorkbook(File file,Workbook in) createWorkbook(java.io.OutputStream os) 提供了各种形式的产生Excel的方式 (2)findByName(String name) 该方法的作用是获得名称为name的Range的数组

(3)findCellByName(String name) 该方法的作用是根据name来获取对应的cell对象(4)getCell(String location) 该方法的作用是根据location来获得对应的cell对象(5)getNumberOfSheets() 该方法的作用是是获得sheet的总个数 (6)getRangeNames() 该方法的作用是获得所有Range对象名称的数组 (7)getSheet(int index) 该方法的作用是根据下标来获取对应的sheet对象 (8)getSheet(String name) 该方法的作用是根据sheet的名称来获得对应的sheet对象(9)getSheetNames() 该方法的作用是获得所有sheet的名称所在的数组(10)getSheets() 该方法的作用是获得所有sheet对象所在的数组

java操作EXCEL表格经典例子详解

Microsoft的Office系列产品拥有大量的用户,Word、Excel也成为办公文件的首选。在Java 中,已经有很多对于Word、Excel的开源的解决方案,其中比较出色的是Apache的Jakata 项目的POI子项目。该项目的官方网站是https://www.sodocs.net/doc/1a2408699.html,/poi/。 POI包括一系列的API,它们可以操作基于MicroSoft OLE 2 Compound Document Format的各种格式文件,可以通过这些API在Java中读写Excel、Word等文件。POI是完全的Java Excel 和Java Word解决方案。POI子项目包括:POIFS、HSSF、HDF、HPSF。表7-2对它们进行了简要介绍。 表7-2 POI子项目介绍 子项目名 说明 POIFS(POI File System) POIFS是POI项目中最早的最基础的一个模块,是Java到OLE 2 Compound Document Format 的接口,支持读写功能,所有的其他项目都依赖与该项目。 HSSF(Horrible Spreadsheet Format) HSSF是Java到Microsoft Excel 97(-2002)文件的接口,支持读写功能 HWPF(Horrible Word Processing Format) HWPF是Java到Microsoft Word 97文件的接口,支持读写功能,但目前该模块还处于刚开始开发阶段,只能实现一些简单文件的操作,在后续版本中,会提供更强大的支持 HPSF(Horrible Property Set Format) HPSF 是Java到OLE 2 Compound Document Format文件的属性设置的接口,属性设置通常用来设置文档的属性(标题,作者,最后修改日期等),还可以设置用户定义的属性。HPSF支持读写功能,当前发布版本中直支持读功能。 7.3.1 对Excel的处理类 下面通过HSSF提供的接口对Excel文件经行处理。首先需要下载POI的包,可以到apache 的官方网站下载,地址为:https://www.sodocs.net/doc/1a2408699.html,/jakarta/poi/,本书采用的是 poi-2.5.1-final-20040804.jar,读者可以下载当前的稳定版本。把下载的包按照前面介绍的方式加入Build Path,然后新建一个ch7.poi包,并创建一个ExcelReader类。 ExcelReader类可以读取一个XLS文件,然后将其内容逐行提取出来,写入文本文件。其代码如下。 代码7.6 public class ExcelReader {

java制作Excel报表简单易用(拿来即用)

java制作Excel报表简单易用 本程序是java程序 本程序是通过jxl.jar来实现的。 最下面会贴出代码 完整例子下载(我放在百度云盘了): https://www.sodocs.net/doc/1a2408699.html,/share/link?shareid=2430244382&uk=2232193761 里面包括:java源码,jxl.jar 编译后的.class,文档说明文件(如果不需要jar包的话,就可以直接复制下面的源码即可,无需下载了) ,后续会添加java Web 项目,实现在servlet中调用写的例子生成excel并下载excel 功能。 简单的讲下如何使用: 直接将DoExcelHelper.java放入到项目中修改下package的名就行了。 怎么样使用DoExcelHelper这个类: 具体的请看DoExcelHelper.java的main方法(也可直接运行main方法,但要注意修改文件保存的路径,不然就会找不到路径哦)。 方法说明: setTitle(String)方法是添加报表最顶部的标题的。

setF_name(String[])添加参数的(key) setF_value(String[])添加参数值的(value),请与参数对应即:key:value setIsVerticalFreeze(boolean);//是否对header进行冻结,让表头随着滚动条而滚动。默认:false setHeader(String[])方法是添加要显示的内容的标题的,就好比是table标题(thead). 最后调用write(list,"F:/workspace/TestFolder/workOrder.xls");//第一个参数:数据集合(List

java如何读取Excel中的数据

下面是例子: import java.io.File; import java.io.FileInputStream; import java.io.IOException; import java.io.InputStream; import java.util.ArrayList; import java.util.List; import jxl.Cell; import jxl.Sheet; import jxl.Workbook; import jxl.read.biff.BiffException; /** * 读取excel公共方法 * * */ public class ExcelReader { /** * * @param excelFile 读取文件对象 * @param rowNum 从第几行开始读,如果有一行表头则从第二行开始读 * @return * @throws BiffException * @throws IOException */ public static List readExcel(File excelFile,int rowNum) throws BiffException, IOException { // 创建一个list 用来存储读取的内容 List list = new ArrayList(); Workbook rwb = null; Cell cell = null; // 创建输入流 InputStream stream = new FileInputStream(excelFile); // 获取Excel文件对象 rwb = Workbook.getWorkbook(stream); // 获取文件的指定工作表默认的第一个 Sheet sheet = rwb.getSheet(0); // 行数(表头的目录不需要,从1开始) for (int i = rowNum-1; i < sheet.getRows(); i++) {

java操作excel(创建excel、生成工作表并添加数据)

package cn.zd; import java.io.File; import jxl.Workbook; import https://www.sodocs.net/doc/1a2408699.html,bel; import jxl.write.WritableSheet; import jxl.write.WritableWorkbook; /** * 生成Excel文件 * @author zhangdi * */ public class CreateExcel { public static void main(String args[]) { try { // 创建文件 WritableWorkbook book = Workbook.createWorkbook(new File("C:\\test.xls")); // 生成名为“第一页”的工作表,参数0表示这是第一页 WritableSheet sheet = book.createSheet("第一页", 0); // 生成名为“第一页”的工作表,参数0表示这是第一页 WritableSheet sheet2 = book.createSheet("第二页", 1); // 在Label对象的构造子中指名单元格位置是第一列第一行(0,0),以及单元格内容为test /** * 参数一:0 第1列--------------------列 * 参数二:0 第1行--------------------行 * 参数三:"test" 内容 */ Label label = new Label(0, 0, "test"); // 将定义好的单元格添加到工作表中 sheet.addCell(label); Label labe2 = new Label(1, 0, "张迪"); sheet.addCell(labe2); //生成一个保存数字的单元格必须使用Number的完整包路径,否则有语法歧义单元格位置是第二列,第一行,值为789.123 jxl.write.Number number = new jxl.write.Number(2, 0, 610);

java之excel操作(jxl介绍)

利用JAVA操作EXCEL文件(JXL使用) 在开源世界中,有两套比较有影响的Excel操作API可供使用,一个是POI,一个是Java Excel API(简称jxl),jxl功能相对POI比较弱一点。但jExcelAPI对中文支持非常好,使用起来非常方便,而且不依赖Windows系统,即使运行在Linux下,它同样能够正确的处理Excel文件。本文着重介绍JAVA EXCEL API的简单使用。 JXL简介 Java Excel是一开放源码项目,通过它Java开发人员可以读取Excel文件的内容、创建新的Excel文件、更新已经存在的Excel文件。使用该API非Windows操作系统也可以通过纯Java应用来处理Excel数据表。因为是使用Java编写的,所以我们在Web应用中可以通过JSP、Servlet来调用API实现对Excel数据表的访问。 提供以下功能: ?从Excel 95、97、2000等格式的文件中读取数据; ?读取Excel公式(可以读取Excel 97以后的公式); ?生成Excel数据表(格式为Excel 97); ?支持字体、数字、日期的格式化; ?支持单元格的阴影操作,以及颜色操作; ?修改已经存在的数据表; ?能够读取图表信息(目前只支持PNG格式的图片) JXL对象介绍 JXL API中主要对象与Excel中各对象对应关系如下

API简单介绍 从Excel文件读取数据表 Java Excel API既可以从本地文件系统的一个文件(.xls),也可以从输入流中读取Excel数据表。读取Excel数据表的第一步是创建Workbook(术语:工作薄),下面的代码片段举例说明了应该如何操作: 一旦创建了Workbook,我们就可以通过它来访问Excel Sheet(术语:工作表)。参考下面的代码片段: 也可以通过下列方法获取sheet的个数。参考代码如下: 一旦得到了Sheet,我们就可以通过它来访问Excel Cell(术语:单元格)。参考下面的代码片段: 需要注意的是:JXL API中如果有行、列两个参数同时出现,都是列参数在前,这与我们一般的操作习惯不一样,务必注意,并且下标从0开始,习惯于F1Book API操作的更加需要小心。 如果仅仅是取得Cell的值,我们可以方便地通过getContents()方法,它可以将任何类型的Cell值都作为一个字符串返回。 如果需要知道Cell内容的确切类型,API也提供了一系列的方法。参考下面的代码片段:

java 实现excel表行列转换规则

package com.change; import java.io.File; import java.io.IOException; import jxl.Cell; import jxl.Sheet; import jxl.Workbook; import jxl.read.biff.BiffException; import jxl.write.WritableSheet; import jxl.write.WritableWorkbook; import jxl.write.WriteException; import jxl.write.biff.RowsExceededException; public class Change { /**excel列转行 * @param n,表示截断excel的多少列为一行即数据数量 */ public void rowcolumn( String inputfilename , String outputfilename) { int n; Workbook wb = null; WritableSheet ws = null; https://www.sodocs.net/doc/1a2408699.html,bel lable = null ; WritableWorkbook wwb = null; //大的第二行的插入行的起始位置 int starth = 0; int c = 0; try { wb = Workbook.getWorkbook(new File(inputfilename)); } catch (BiffException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } if(wb == null) { return; } Sheet[] sheet = wb.getSheets();//获取工作簿表对象 if(sheet!=null && sheet.length > 0) { //创建一个工作簿对象

jxl操作excel的简析和应用

在做一个excel项目的时候看到的,自己认为很有用,就收集了下 以下是原文地址: 第一部分(介绍)https://www.sodocs.net/doc/1a2408699.html,/fei/?post=81 和 第二部分(应用)https://www.sodocs.net/doc/1a2408699.html,/fei/post-82.html ? ?最近,完成了一个网上报表系统,刚巧用到了一个JAVA操作excel 表格的API.闲来无事,就将其大概的总结了一下.现阶段JAVA操作Excel 的JAR主要有apache 的POI及jxl.因为现在的eclipse操作excel用的插件为jxl,所以在项目中就使用了jxl.想想两者都差不了太多.此简单系列为两个部分,一是API系列,另一部分则是应用系列. 一、API系列 Jxl的API主要有三个包,jxl,jxl.format,jxl.write.如果单独的分析API,可能对于更明确的了解此API没有太多的帮助,我们还是从Excel文件的层次来剥离此API吧. 一个excel文件由一个工作簿组成,一个工作簿又由n个工作表组成.每个工作表又由多个单元格组成.对应于Jxl中的结构为

单元格(此处指文本单元格,图像及链接和单元格做为一个层次)分为好多种,所以在API的设计中将Cell作为一个接口而存在. 对应的jxl中的结构为: 而有的时候,我们可能将几个单元格作为一个整体来处理,在API中对应的则是: jxl.Range 虽然数据是电子表格的核心,但是同时其也需要一些辅助类比如文件格式设置,工作表设置与显示效果.单元格设置与显示效果等.按照其层次,则依次有以下接口或类.

最后,关于Jxl.format包.此包主要是一些与具体样式有关的接口和枚举.不进行具体描述.第一部分完. (二)应用 在进行实践前,我们需要对excel有一个大致的了解,excel文件由一个工作簿(Workbook)组成,工作簿由工作表(sheet)组成,每个工作表又由很多单元格(cell)组成. 工作簿有自己的特征,同样工作表,单元格也一样.从大局上了解了excel文件,对于我们更好的使用jxl是有一定的帮助的.具体请查看(一)API

jxl读写excel常见操作搜集整理

jxl读写excel常见操作搜集整理 package common.excelTool; import java.io.File; import java.io.FileOutputStream; import java.io.OutputStream; import java.util.ArrayList; import java.util.Date; import java.util.HashMap; import jxl.Cell; import jxl.CellType; import jxl.DateCell; import jxl.Range; import jxl.Sheet; import jxl.Workbook; import jxl.WorkbookSettings; import jxl.format.Alignment; import jxl.format.Border; import jxl.format.BorderLineStyle; import jxl.format.CellFormat; import jxl.format.Colour; import jxl.format.UnderlineStyle; import jxl.format.VerticalAlignment; import jxl.write.Formula; import https://www.sodocs.net/doc/1a2408699.html,bel; import jxl.write.Number; import jxl.write.NumberFormat; import jxl.write.WritableCell; import jxl.write.WritableCellFeatures; import jxl.write.WritableCellFormat; import jxl.write.WritableFont; import jxl.write.WritableSheet; import jxl.write.WritableWorkbook; import jxl.write.WriteException; import jxl.write.biff.RowsExceededException; public class WriteExcelTest { static HashMap map = new HashMap(); public static void main(String[] args) { try { // copyDateFormat(new File("c:\\a.xls"), 0, "c:\\copy of a.xls");

Java读写Excel文件中数据的简便方法(附代码)

Java读写Excel文件中数据的简便方法 Java开发项目中经常会碰到处理Excel文件中数据的情况,这里通过一个例子来看一下实现方法:从Excel文件orders.xls中读取订单信息,从中找出2010年1月1日(含)之后,并且SELLERID等于18的订单。找到的数据写入order_result.xls文件。 Excel文件orders.xls的内容如下: ORDERID CLIE NT SE LLERID AMOUNT ORDERDATE 1 UJRNP 17 39 2 2008/11/2 15:28 2 SJCH 6 4802 2008/11/9 15:28 3 UJRNP 16 13500 2008/11/5 15:28 4 P WQ 9 26100 2008/11/8 15:28 5 P WQ 11 4410 2008/11/12 15:28 6 HANAR 18 6174 2008/11/ 7 15:28 7 E GU 2 17800 2008/11/6 15:28 8 VILJX 7 2156 2008/11/9 15:28 9 JAYB 14 17400 2008/11/12 15:28 10 JAXE 19 19200 2008/11/12 15:28 11 SJCH 7 13700 2008/11/10 15:28 12 QUICK 11 21200 2008/11/13 15:28 13 HL 12 21400 2008/11/21 15:28 14 JAYB 1 7644 2008/11/16 15:28 15 MIP 16 3234 2008/11/19 15:28 16 AYW YN 4 6566 2008/11/21 15:28 … Java程序的编写思路是 1、从Excel文件逐行读入数据保存到List对象sourceList中。 2、遍历List对象sourceList,如果满足条件就保存到结果List对象resultList中。 3、遍历reslutList,逐行保存到输出Excel文件中。 其中包含一些处理不同数据类型的语句,具体代码如下: public static void myExcel() throws Exception { //读excel数据 HSSFWorkbook workbook= newHSSFWorkbook(new FileInputStream(new File("d:/file/orders.xls"))); Sheet sheet=workbook.getSheetAt(0);//读取第一个sheet List>sourceList= new ArrayList>(); List>resultList= new ArrayList>(); SimpleDateFormat format = new SimpleDateFormat("yyyy-M-ddHH:mm:ss"); for (int i = 1; i order=new HashMap(); Cell cell0 = row.getCell(0);

java导入excel表格

1 从Excel文件读取数据表 Java Excel API既可以从本地文件系统的一个文件(.xls),也可以从输入流中读取Excel数据表。读取Excel数据表的第一步是创建Workbook(术语:工作薄),下面的代码片段举例说明了应该如何操作:(完整代码见ExcelReading.java) 一旦创建了Workbook,我们就可以通过它来访问Excel Sheet(术语:工作表)。参考下面的代码片段: 我们既可能通过Sheet的名称来访问它,也可以通过下标来访问它。如果通过下标来访问的话,要注意的一点是下标从0开始,就像数组一样。 一旦得到了Sheet,我们就可以通过它来访问Excel Cell(术语:单元格)。参考下面的代码片段:

如果仅仅是取得Cell的值,我们可以方便地通过getContents()方法,它可以将任何类型的Cell值都作为一个字符串返回。示例代码中Cell(0, 0)是文本型,Cell(1, 0)是数字型,Cell(1,1)是日期型,通过getContents(),三种类型的返回值都是字符型。 如果有需要知道Cell内容的确切类型,API也提供了一系列的方法。参考下面的代码片段:

在得到Cell对象后,通过getType()方法可以获得该单元格的类型,然后与API 提供的基本类型相匹配,强制转换成相应的类型,最后调用相应的取值方法getXXX(),就可以得到确定类型的值。API提供了以下基本类型,与Excel的数据格式相对应,如下图所示: 每种类型的具体意义,请参见Java Excel API Document。 当你完成对Excel电子表格数据的处理后,一定要使用close()方法来关闭先前创建的对象,以释放读取数据表的过程中所占用的内存空间,在读取大量数据时显得尤为重要。参考如下代码片段: Java Excel API提供了许多访问Excel数据表的方法,在这里我只简要地介绍几个常用的方法,其它的方法请参考附录中的Java Excel API Document。Workbook类提供的方法

利用java如何读取Excel中的数据

利用java如何读取Excel中的数据! 新一篇: Oracle优化方针! 利用java读取Excel中的数据! 使用Windows操作系统的朋友对Excel(电子表格)一定不会陌生,但是要使用Java语言来操纵Excel文件并不是一件容易的事。在Web应用日益盛行的今天,通过Web来操作Excel文件的需求越来越强烈,目前较为流行的操作是在JSP 或Servlet 中创建一个CSV (comma separated values)文件,并将这个文件以MIME,text/csv类型返回给浏览器,接着浏览器调用Excel并且显示CSV文件。这样只是说可以访问到Excel文件,但是还不能真正的操纵Excel文件,本文将给大家一个惊喜,向大家介绍一个开放源码项目,Java Excel API,使用它大家就可以方便地操纵Excel文件了。 JAVA EXCEL API简介 Java Excel是一开放源码项目,通过它Java开发人员可以读取Excel文件的内容、创建新的Excel文件、更新已经存在的Excel文件。使用该API非Windows 操作系统也可以通过纯Java应用来处理Excel数据表。因为是使用Java编写的,所以我们在Web应用中可以通过JSP、Servlet来调用API实现对Excel数据表的访问。 Java Excel API 文档 https://www.sodocs.net/doc/1a2408699.html,/jexcelapi/ 1.应用示例: 如何从Excel读取数据: package com.etong.allen; import java.io.*; import java.util.*; import com.roger.util.StringUtil; import jxl.Cell; import jxl.Sheet;

excel操作性能对比和操作说明以及完整的例子 jxl poi

一、性能对比 技术poi jxl csv 读excel第一次 读excel平均时间 920 750 31 写excel第一次 (毫秒) 写excel平均时间 750 450 31 (毫秒) 备注:由于测试的环境(计算机配置,运行时cpu、内存使用量,不同测试用例处理的集合类型和数据量)存在悬殊,会有不少误差,等有时间待进一步对性能进行精确定义。 二、相关 1、csv 1)定义 csv(Comma Separate Values)文件即逗号分隔符文件,它是一种文本文件,可以直接以文本打开,以逗号分隔。windows默认用excel打开。 主要应用:经常用来作为不同程序之间的数据交互的格式。 2)语法规范: ①每条记录占一行; ②以逗号为分隔符; ③逗号前后的空格会被忽略; ④字段中包含有逗号,该字段必须用双引号括起来; ⑤字段中包含有换行符,该字段必须用双引号括起来; ⑥字段前后包含有空格,该字段必须用双引号括起来;

⑦字段中的双引号用两个双引号表示; ⑧字段中如果有双引号,该字段必须用双引号括起来; ⑨第一条记录,可以是字段名; ⑩以上提到的逗号和双引号均为半角字符。 3)处理方式 用流来操作。具体做法见代码。 4)缺陷:不能真正意义上操作excel 2、POI Apache的POI组件是Java操作Microsoft Office办公套件的强大API,其中对Word,Excel和PowperPoint都有支持,当然使用较多的还是Excel,因为Word 和PowerPoint用程序动态操作的应用较少。 Office 2007的文件结构完全不同于2003,所以对于两个版本的Office组件,POI有不同的处理API,分开使用即可。 首先来说几个Excel的基本概念。对于一个Excel文件,这称为一个工作簿(Workbook),打开Excel之后,在下方会有sheet1/2/3这样的选项卡,点击可以切换到不同的sheet中,这个sheet称作工作表。每个工作表就是我们编辑的区域,这是一张二维表,阿拉伯数字控制行数,从1开始,而程序中还是0,类似数组和集合。字母控制列数,从A开始,Z以后是两个字母控制。对于每一行,我们称为Row,列就是Column,行列可以确定唯一的一个元素,那么就是单元格,称为Cell。 3、JXL Java Excel是一开放源码项目,通过它Java开发人员可以读取Excel文件的内容、创建新的Excel文件、更新 已经存在的Excel文件。使用该API非Windows操作系统也可以通过纯Java应用来处理Excel数据表。因为是使用 Java编写的,所以我们在Web应用中可以通过JSP、Servlet来调用API实现对Excel 数据表的访问。现在发布的稳 定版本是V2.0,提供以下功能: 从Excel 95、97、2000等格式的文件中读取数据; 读取Excel公式(可以读取Excel 97以后的公式); 生成Excel数据表(格式为Excel 97); 支持字体、数字、日期的格式化; 支持单元格的阴影操作,以及颜色操作; 修改已经存在的数据表; 现在还不支持以下功能,但不久就会提供了: 不能够读取图表信息; 可以读,但是不能生成公式,任何类型公式最后的计算值都可以读出;

相关主题