文档库 最新最全的文档下载
当前位置:文档库 › jxl操作excel的简析和应用

jxl操作excel的简析和应用

jxl操作excel的简析和应用
jxl操作excel的简析和应用

在做一个excel项目的时候看到的,自己认为很有用,就收集了下

以下是原文地址:

第一部分(介绍)https://www.wendangku.net/doc/af14562572.html,/fei/?post=81 和

第二部分(应用)https://www.wendangku.net/doc/af14562572.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中其大概的层次是这样的

Jxl读excel:

得到工作簿的方法主要有四个:

getWorkbook(File file)

getWorkbook(File file,WorkSettings ws)

getWorkbook(InputStream is)

getWorkbook(InputStream is,WorkSettings ws)

参数有两个:

第一个参数是必须的:文件或输入流,

第二个参数:工作簿ws是作为读出来的excel的一些约定,如地区,编码等. 如果文件错误或格式错误,将会抛出BiffException或IOException.

代码段:

Workbook wb=null;

try

{

wb = Workbook.getWorkbook(excelFile);

wb.close();

}

catch(BiffException ex){

//转换错误

}catch(IOException ex){

//IO错误

}

以上如果一切正常的话,将得到此excel文件的工作簿.接下来我们就可以通过此文件簿得到其他的东西了.以下是得到工作表有关的方法

int getNumberOfSheets()//工作表个数

Sheet getSheet(String name);//得到此对应名称的工作表

Sheet getSheet(int index);//得到此序列号的工作表

Sheet[] getSheets();//得到工作表数组

String[] getSheetNames();//得到工作表名称数组

示例代码如下:

Sheet sheet;

if(wb.getNumberOfSheets()>0)

{

sheet = wb.getSheet(0);

}

以下的方法除非特别目的,否则用到的地方不多.

Range[] finaName(String name);//得到此名称的表格区

Cell findCellByName(String name);//得到此名称的Cell

Cell getCell(String loc)

String[] getRangeNames();

与文件是否可写有关的

boolean isProected();

得到了工作簿文件的某个工作表时.

对于工作表而言其主要的内容就是单元格了.

//根据内容查看

Cell findCell(Pattern pattern,int firstCol,int firstRow,int lastCol,int lastRow,Boolean reverse)

Cell findCell(String content)

Cell findCell(String content,omt forstCol,int firstRow,int lastCol,int lastRow,Boolean reverse)

LabelCell findLabelCell(String contents)

//根据位置得到

Cell getCell(int col,int row)

Cell getCell(String loc)//loc的格式为A3/B1/C3其相同于

getCell(CellReferenceHelper.getColumn(loc0,CellReferenceHelper.getRow(loc)),所以相对而言其性能没有Cell getCell(int col,int row)快

//单元格数组

Cell[] getRows(int row)//当前行单元格数组

Cell[] getCols(int col)//当前列单元格数组

//特殊单元格数组

//超链接表格

Hyperlink[] getHyperlinks();//超链接数组

//区域表格

Range[] getMergedCells();//区域单元格数组

//图像表格

Int getNumberOfImages()//拥有图片数

Image getDrawing(int index)//对应序号的图片

//工作表或多个表格一些自我属性

String getName()//工作表名

int getRows()//行数

int getCols()//列数

SheetSettings getSettings()//工作表设置

CellView getColumnView(int col)//此列的表格视图

CellView getRowV iew(int row)//此行的表格视图

以下是与单元格有关的一些操作:

CellFeatures getCellFeatures()//主要是与表格内容有关的一些性质如验证等

CellFormat getCellFormat()//主要是表格外在表现格式有关的一些性质.

int getColumn()//所在列

int getRow()//所在行

String getContents();//内容

boolean isHidden();//可见否

CellType getType();//表格类型如果不确定表格如果转换则可以使用此方法来确定表格类型.

以下我们讲述如何写excel文件.

写文件分为两种情况一种是新建一种则是更新.

新建excel文件

新建excel文件很简单:

//文件

WritableWorkbook createWorkbook(File file) //无形式的创建一个excel文件

WritableWorkbook createWorkbook(File file Workbook in)

//以in一样的格式创建一个excel文件,其初始内容与in文件相同(更新文件可以用到此方法)

WriteableWorkbook createWorkbook(File file,WorkSetting ws)//以ws的设定创建文件WritableWorkbook createWorkbook(File file,Workbook in,WorkSetting ws)

//以ws的设定创建一个与in文件相同的文件

//流

WritableWorkbook createWorkbook(OutputStream os)

WritableWorkbook createWorkbook(OutputStream os Workbook in) WriteableWorkbook createWorkbook(OutputStream os,WorkSetting ws) WritableWorkbook createWorkbook(OutputStream os,Workbook in,WorkSetting ws)

代码示例:

WritableWorkbook wrb;

WriteableWorkbook wrbin;

try

{

wrb = Workbook.createWorkbook(targetfile);

wrbin = Workbook.createWorkbook(targetfile,wb);

}

catch (IOexception e)

{

//IO错误

}

当创建好工作簿时,我们就需要新建工作表了

WritableSheet createSheet(String name,int index);

WritableSheet wrs = wrb.createSheet(“demo”,0);

//创建一个名为demo的工作表,其为工作簿的第一个工作表.

接下来我们就可以进行其他操作了

添加文本类单元格:

Label label = new Label(0,0,””);

wrb.addCell(label);

//添加数据单元格

Number number = new Number(0,3,1234);

wrb.addCell(number);

//添加时间单元格

DateTime dt = new DateTime(0,4,new Date());

Wrb.addCell(dt);

//添加公式单元格

Fornual formual = new F ormual(0,11,”Sum(A1:A9)”);

wrb.addCell(formual);

添加超链接类单元格

WirtableHyperlink wrlink =

new WritableHyperlink(0,1,0,1,new URL(“https://www.wendangku.net/doc/af14562572.html,/fei”),”emlog”); wrb.addHyperlink(wrlink);

//添加图像

WritableImage wrimage=new WritableImage(1,5,10,10,new File(imageFilepath)); wrb.addImage(wrimage);

//注意,API中注明只支持png文件,然而我用其他格式的图片,通过将其后缘改为png也能放到excel文件中.果然,在查看其具体源代码时,发现作者只是检测了文件的后缀名,如果不对给出警告,并没有从图像文件的具体格式进行检测.

当然,表格中的数据算是表格的核心部分,但是同时API也提供了大量的其他方法来丰富表格的显示.在此,大家具体在使用过程中进行运用就行.

//最后,写完表格后,不要忘记进行写操作,也就是常说的保存

wrb.write()

wrb.close();保存完后关闭相应资源是一个合格的程序员应该做的.

接下来,我们就来讲述写文件的另一方面:更新文件.有时候,并不仅仅只是需要新写文件,可能需要对已有文件进行更新.这时候我们可以这么来实现.

Workbook wb= Workbook.getWorkbook(modifyFile);

WritableWorkbook wrb = Workbook.createWorkbook(modifyFile, wb);

以上就实现了得到一个已存在的文件的可修改副本.

//得到第一个工作表

WritableSheet wrs = wrb.getSheet(0);

//得到A0单元格

Cell cell = Wrs.getCell(0,0);

//对单元格格式进行判断

If (cell.getType()==https://www.wendangku.net/doc/af14562572.html,BEL){

Label label=(Label) cell;

label.setString(“u r modified.”);

}//modify end

//save excel

wrb.write();

wb.close();

wrb.close();

以上就简单的完成了一次excel文件的修改.API中还提供了复制工作表,复制单元格等操作,大家可以通过查询API来了解其具体的用法.我们可以从作者提供的包中得到很多关于如何使用API的示例.此处不献丑了.jxl官文网站:https://www.wendangku.net/doc/af14562572.html,/jexcelapi/index.html

JXL入门常用格式设置

创建 //输出流 OutputStream os = new FileOutputStream(“D:\\test.xls”); //创建workbook WritableWorkbook workbook= Workbook.createWorkbook(os); //创建一个sheet 参数(sheetName ,sheetNumber)下标0开始代表第一页WritableSheet sheet = workbook.createSheet(“第一个sheet”, 0); 宽度、高度、和并单元格 //设置列的默认列宽(所有单元格) sheet.getSettings().setDefaultColumnWidth(9); //设置列的默认行高(所有单元格) sheet.getSettings().setDefaultRowHeight(500); //宽度设定第一列宽16 下标0开始代表第一列 sheet.setColumnView(0, 16); //高度设定第一行高度700 sheet.setRowView(0, 700); //单元格合并开始列号,开始行号,结束列号,结束行号 sheet.mergeCells(0, 0, 31, 0); 文字格式: 字体、大小、背景色、对齐、边框线、自动换行 想使用自己定义的颜色请关注本人百度空间实现方法。 //生成字体字体MSPゴシック18号非粗体非斜体(字体在Excle中复制) WritableFont font = new WritableFont(WritableFont.createFont("MSPゴシック"), 18, WritableFont.NO_BOLD, false); //生成格式 WritableCellFormat format= new WritableCellFormat(); //向格式中加入字体 format.setFont(font); //背景色 format .setBackground(Colour.BLUE)

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.wendangku.net/doc/af14562572.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];

jxl.jar使用方法

jxl.jar 通过java操作excel表格的工具类库 支持Excel 95-2000的所有版本 生成Excel 2000标准格式 支持字体、数字、日期操作 能够修饰单元格属性 支持图像和图表 应该说以上功能已经能够大致满足我们的需要。最关键的是这套API是纯Java的,并不依赖Windows系统,即使运行在Linux下,它同样能够正确的处理Excel文件。另外需要说明的是,这套API对图形和图表的支持很有限,而且仅仅识别PNG格式。 搭建环境 将下载后的文件解包,得到jxl.jar,放入classpath,安装就完成了。 基本操作 一、创建文件 拟生成一个名为“测试数据.xls”的Excel文件,其中第一个工作表被命名为“第一页”,大致效果如下: 代码(CreateXLS.java): //生成Excel的类 import java.io.*; import jxl.*; import https://www.wendangku.net/doc/af14562572.html,bel; import jxl.write.Number; import jxl.write.WritableSheet; import jxl.write.WritableWorkbook; public class CreateXLS { public static void main(String args[]) { try {

// 打开文件 WritableWorkbook book = Workbook.createWorkbook(new File("测试.xls")); // 生成名为“第一页”的工作表,参数0表示这是第一页 WritableSheet sheet = book.createSheet("第一页", 0); // 在Label对象的构造子中指名单元格位置是第一列第一行(0,0) // 以及单元格内容为test Label label = new Label(0, 0, "test"); // 将定义好的单元格添加到工作表中 sheet.addCell(label); /* * 生成一个保存数字的单元格必须使用Number的完整包路径,否则有语法歧义单元格位置是第二列,第一行,值为789.123 */ Number number = new Number(1, 0, 789.123); sheet.addCell(number); // 写入数据并关闭文件 book.write(); book.close(); } catch (Exception e) { System.out.println(e); } } } 编译执行后,会在当前位置产生一个Excel文件。 二、读取文件 以刚才我们创建的Excel文件为例,做一个简单的读取操作,程序代码如下:import java.io.*; import jxl.*; public class ReadXLS { public static void main(String args[]) { try { Workbook book = Workbook.getWorkbook(new File("测试.xls")); // 获得第一个工作表对象

。502076《Excel高级应用》课程标准

《Excel高级应用》课程标准 课程代码: 502076 参考学时: 90 学分: 5 课程类型:专业课 2015年 1月编 一、适用专业 计算机应用技术专业(3年制中职,5年制高职)。 二、开课时间 第 3 学期 三、课程定位 1.课程性质 本课程是计算机应用技术专业(3年制中职,5年制高职)的专业课程。《Excel高级应用》是办公软件学习的高级阶段,是计算机应用基础、办公软件高级操作员应用等课程的后续课程,是计算机应用技术专业学生必须掌握的专业知识之一。 2.教学任务 本课程的主要任务是培养学生操作和使用Excel软件的能力;学会使用Excel解决实际工作情境中的信息与数据处理的能力。从而提升学生的办公能力与

效率,提高学生的综合职业能力。通过协作学习方式提升学生的交流沟通、团队协作能力以及可持续发展的能力与职业迁移能力。 四、课程培养目标 1.方法能力目标 (1) 培养学生独立学习能力、自学能力; (2) 培养学生自我分析问题和解决问题的能力; (3) 培养学生获取新知识的能力和信息搜索能力; (4) 培养学生独立的决策能力; (5) 培养学生善于总结和创造性工作的能力。 2.社会能力目标 (1) 培养学生良好的自我表现、与人沟通能力; (2) 培养学生的团队协作精神; (3) 培训学生勇于创新、爱岗敬业的工作作风; (4) 培养学生的质量意识、安全意识; (5) 培养学生诚实、守信、坚忍不拔的性格; (6) 培养学生自主、开放的学习能力。 3.专业能力目标

(1) 能快速使用Excel电子表格软件进行表格的编辑; (2) 能快速准确创建图表并进行编辑与美化图表; (3) 掌握在Excel中使用公式与函数进行数据处理的能力; (4) 掌握查看与打印工作表的能力; (5) 掌握Excel中数据透视表、数据透视表的创建与编辑; (6) 学会使用Excel进行数据排序、筛选、分类汇总和合并计算的能力; (7) 掌握Excel中数据共享的方法。 五、课程衔接 本课程的前导课程有《计算机应用基础》,《办公软件高级操作员级应用》 等。 六、教学内容与学时分配 教学学时数分配见表 6.1所示 表6.1教学内容与学时分配 序号教学内容(项目、情景)理论学时实践学时习题学时合计 1 在工作表中输入与编辑数据 4 4 2 工作表与单元格常用操作 4 4 3 美化工作表 6 6 4 使用公式与函数8 10 5 管理工作表中的数据8 8

jxl使用说明文档

jxl.jar概述 通过java操作excel表格的工具类库 支持Excel 95-2000的所有版本 生成Excel 2000标准格式 支持字体、数字、日期操作 能够修饰单元格属性 支持图像和图表 应该说以上功能已经能够大致满足我们的需要。最关键的是这套API是纯Java的,并不依赖Windows系统,即使运行在Linux下,它同样能够正确的处理Excel文件。另外需要说明的是,这套API对图形和图表的支持很有限,而且仅仅识别PNG格式。 编辑本段搭建环境 将下载后的文件解包,得到JXL.JAR,放入classpath,安装就完成了。如果包不能正常的加载,可以把你下载好的JXL.JAR包放入D:\JAVA\jre\lib\ext 中(我的是JDK1.6)就OK了。我相信在配置TOMCAT时也需要把相关的三个包放到这里面。 编辑本段基本操作 一、创建文件 拟生成一个名为“测试数据.xls”的Excel文件,其中第一个工作表被命名为“第一页”,大致效果如下: 代码(CreateXLS.java): //生成Excel的类 import java.io.*; import jxl.*; import jxl.write.*; public class CreateXLS { public static void main(String args[]) { try { //打开文件 WritableWorkbook book= Workbook.createWorkbook(new File(“测试.xls”)); //生成名为“第一页”的工作表,参数0表示这是第一页

WritableSheet sheet=book.createSheet(“第一页”,0); //在Label对象的构造子中指名单元格位置是第一列第一行(0,0) //以及单元格内容为test Label label=new Label(0,0,”test”); //将定义好的单元格添加到工作表中 sheet.addCell(label); /*生成一个保存数字的单元格 必须使用Number的完整包路径,否则有语法歧义 单元格位置是第二列,第一行,值为789.123*/ jxl.write.Number number = new jxl.write.Number(1,0,789.123); sheet.addCell(number); //写入数据并关闭文件 book.write(); book.close(); }catch(Exception e) { System.out.println(e); } } } 编译执行后,会在当前位置产生一个Excel文件。 二、读取文件 以刚才我们创建的Excel文件为例,做一个简单的读取操作,程序代码如下://读取Excel的类 import java.io.*; import jxl.*; public class ReadXLS { public static void main(String args[]) { try { Workbook book= Workbook.getWorkbook(new File(“测试.xls”)); //获得第一个工作表对象 Sheet sheet=book.getSheet(0); //得到第一列第一行的单元格 Cell cell1=sheet.getCell(0,0); String result=cell1.getContents(); System.out.println(result); book.close();

使用JAVA存储过程导入EXCEL文件操作指南

利用JAV A存储过程进行EXCEL导入 导入思路 顾问提供的PO导入FORM已经给了我们一个导入数据到系统的一个模板,基本能够满足我们的要求,该FORM主要完成以下动作: 1.显示文件上传页面给用户选择文件 2.将文本文件以字符流的形式存入到fnd_lobs表的BLOB字段 3.从BLOB字段读取数据,通过逗号分割(,)的方式从BLOB字段获取每个字段的值 4.存入系统临时表进行后续的导入处理 该方法的主要缺点在于需要用户手工将EXCEL文件存为.csv文件(即普通.txt文件),以及通过逗号分割进行解析字符流的方式进行文本文件的处理,如果用户提供的EXCEL单元格的数据中有逗号(,),则解析会出错。 该方法可以利用JAV A存储过程进行改进为: 1.在上传页面用户直接上传EXCEL文件 2.将文本文件以字符流的形式存入到fnd_lobs表的BLOB字段 3.以BLOB字段作为文件输入流,调用JAV A存储过程获取EXCEL文件内容 4.存入系统临时表进行后续的导入处理 在新方法的第3步中,调用JAV A类型的存储过程,引用处理EXCEL的JAV A API进行文件内容的读取。由于是直接解析EXCEL文件,可以减少出错的概率,另外也可以通过对API 进行替换的方式来处理其他类型的文件,如WORD或XML文件等。 导入实现 具体细节部分请参照附件的XXEXCELIMPORT.fmb文件,以下部分只说明主要步骤。 创建FORM 1.创建临时表块以及上传功能按钮 2.添加上传文件功能, 以上FORM部分具体参照顾问提供的PO导入FORM以及其中的文件上传程序段UPLOAD_FILE

Excel高级使用技巧222

Excel高级使用技巧 会计实务操作教程,本部分内容主讲Excel高级使用技巧,如何利用财务软件Excel 高级使用技巧来高效办公 难点释疑:根据需要,有时想把B列与C列的内容进行合并,如果行数较少,可以直接用“剪切”和“粘贴”来完成操作,但如果有几万行,就不能这样办了。 解决办法是:在C行后插入一个空列(如果D列没有内容,就直接在D列操作),在D1中输入“=B1&C1”,D1列的内容就是B、C两列的和了。选中D1单元格,用鼠标指向单元格右下角的小方块“■”,当光标变成"+"后,按住鼠标拖动光标向下拖到要合并的结尾行处,就完成了B列和C列的合并。这时先不要忙着把B列和C列删除,先要把D列的结果复制一下,再用“选择性粘贴”命令,将数据粘贴到一个空列上。这时再删掉B、C、D列的数据。 下面是一个“&”实际应用的例子。用AutoCAD绘图时,有人喜欢在EXCEL中存储坐标点,在绘制曲线时调用这些参数。存放数据格式为“x,y”的形式,首先在Excel中输入坐标值,将x坐标值放入A列,y坐标值放入到B列,然后利用“&”将A列和B列合并成C 列,在C1中输入:=A1&","&B1,此时C1中的数据形式就符合要求了,再用鼠标向下拖动C1单元格,完成对A列和B列的所有内容的合并(如图3-4)。 合并不同单元格的内容,还有一种方法是利用CONCATENATE函数,此函数的作用是将若干文字串合并到一个字串中,具体操作为“=CONCATENATE(B1,C1)”。比如,假设在某一河流生态调查工作表中,B2包含“物种”、B3包含“河鳟鱼”,B7包含总数45,那么:输入“=CONCATENATE("本次河流生态调查结果:",B2,"",B3,"为",B7,"条/公里。")” 计算结果为:本次河流生态调查结果:河鳟鱼物种为45条/公里。 以下是会计实务操作教程Excel高级使用技巧53个 01、如何在已有的单元格中批量加入一段固定字符? 例如:在单位的人事资料,在excel中输入后,由于上级要求在原来的职称证书的号码全部再加两位,即要在每个人的证书号码前再添上两位数13,如果一个一个改的话实在太麻烦了,那么我们可以用下面的办法,省时又省力:

Jxl.jar(导入导出Excel)简单运用

Jxl.jar 简单运用 1.1jxl.jar 包简介 下载地址:https://www.wendangku.net/doc/af14562572.html,/jexcelapi/ 特征: ● 支持Excel 95-2000的所有版本 ● 生成Excel 2000标准格式 ● 支持字体、数字、日期操作 ● 能够修饰单元格属性 ● 支持图像和图表 最关键的是这套API是纯Java的,并不依赖Windows系统,即使运行在Linux下,它同样能够正确的处理Excel文件。另外需要说明的是,这套API对图形和图表的支持很有限,而且仅仅识别PNG格式。 1.2搭建环境 将下载后的文件解包,得到jxl.jar,放入classpath,安装就完成了。 2jxlr的基本运用 2.1创建文件 生成一个名为“测试数据.xls”的Excel文件,其中第一个工作表被命名为“第一页”,大致效果如下: 代码(CreateXLS.java): import java.io.*; import jxl.*; import jxl.write.*; public class CreateXLS { public static void main(String args[]) { try { //打开文件 WritableWorkbook book= Workbook.createWorkbook(new File(“测试.xls”)); //生成名为“第一页”的工作表,参数0表示这是第一页 WritableSheet sheet=book.createSheet(“第一页”,0); //在Label对象的构造子中指名单元格位置是第一列第一行(0,0) //以及单元格内容为test Label label=new Label(0,0,”test”); //或者WritableCell cell = new jxl.write.Number(column, row, value, wcf) //将定义好的单元格添加到工作表中 sheet.addCell(label);

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

JXL简介 JXL(Java Excel API)是一开放源码项目,通过它Java开发人员可以读取Excel文件的内容、创建新的Excel文件、更新已经存在的Excel文件。使用该API非Windows操作系统也可以通过纯Java应用来处理Excel数据表。因为是使用Java 编写的,所以我们在Web应用中可以通过JSP、Servlet来调用API实现对Excel数据表的访问。 可以分别通过如下命令: java -jar jxl.jar -xml test.xls java -jar jxl.jar -cvs test.xls 以xml和cvs格式查看test.xls,这是因为JXL作者实现了一个用来演示的jxl.demo.Demo的类。 从Excel文件读取数据表 Excel文件中的对象:1 文件对象2工作簿对象3 单元格对象。相应的在JXL中就有Workbook,Sheet ,Cell 。通过这三个对象我们就可以实现Excel文件的读取工作。 Java Excel API既可以从本地文件系统的一个文件(.xls),也可以从输入流中读取Excel数据表。 通过Workbook的静态方法getWorkbook选取Excel文件 //直接从本地文件创建Workbook Workbook workbook = Workbook.getWorkbook(new File("myfile.xls")); //从输入流创建Workbook InputStream input = new FileInputStream("myfile.xls"); Workbook workbook = Workbook.getWorkbook(input); 既可以通过工作表的名称来访问工作表,也可以通过下标来访问。 //通过Workbook的getSheet方法选择第一个工作表(从0开始) Sheet sheet = workbook.getSheet(0); //通过Sheet方法的getCell方法选择位置为C2的单元格(两个参数都从0开始) Cell cell = sheet.getCell(2,1); //通过Cell的getContents()方法可以将任何类型的Cell值都作为一个字符串返回 String value = cell.getContents(); Cell 提供了一个getType方法能够返回单元格的类型信息,同时JXL提供了一个CellType类用来预设Excel中的类型信息,而且JXL提供了一些Cell类的子类用来分别用来表示各种类型的单元格,如LabelCell,NumberCell,DateCell 分别表示字符、数值、日期类型的单元格。在得到Cell对象后,通过getType()方法可以获得该单元格的类型,然后与API提供的基本类型相匹配,强制转换成相应的类型,最后调用相应的取值方法getXXX(),就可以得到确定类型的值。if (cell.getType() == https://www.wendangku.net/doc/af14562572.html,BEL) { LabelCell l abelCell = (LabelCell) cell; labelCell.getString(); } else if (cell.getType() == CellType.NUMBER) { NumberCell numberCell = (NumberCell) cell; numberCell.getValue(); } else if (cell.getType() == CellType.DA TE) { DateCell dateCell = (DateCell) cell; dateCell.getDate(); } 当你完成对Excel电子表格数据的处理后,一定要使用close()方法来关闭先前创建的对象,以释放读取数据表的过程中所占用的内存空间,在读取大量数据时显得尤为重要。 //操作完成时,关闭对象,释放占用的内存空间 workbook.close(); Java Excel API提供了许多访问Excel数据表的方法。 Workbook类提供的方法: int getNumberOfSheets() 获得工作薄(Workbook)中工作表(Sheet)的个数。 Sheet[] getSheets() 返回工作薄(Workbook)中工作表(Sheet)对象数组。

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

http:https://www.wendangku.net/doc/af14562572.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开始

excel 高级教程(高级应用)

本文由可__00贡献 doc文档可能在WAP端浏览体验不佳。建议您优先选择TXT,或下载源文件到本机查看。 1 在多个 Excel 工作簿间快速切换 按下“Ctrl+Tab”可在打开的工作簿间切换 快速删除空行 有时为了删除 Excel 工作簿中的空行,你可能会将空行一一找出然后删除,这样做非常不方便。你可以利用自动筛选功能来实现,方法是:先在表中插入新的一行(全空),然后选择表中所有的行,单击“数据→筛选→自动筛选”命令,在每一列的顶部,从下拉列表中选择“空白”。在所有数据都被选中的情况下,单击“编辑→删除行”,然后按“确定”,所有的空行将被删去。注意:插入一个空行是为了避免删除第一行数据。 绘制斜线单元格绘制斜线单元格 利用 Excel“边框”选项卡的两个斜线按钮,可以在单元格中画左、右斜线。如果想在单元格中画多条斜线,就必须利用“绘图”工具,方法是:打开 Excel 的“绘图”工具,单击“直线”按钮,待光标变成小十字后拖动光标,即可画出需要的多条斜线。只要画法正确,斜线可随单元格自动伸长或缩短。至于斜线单元格的其他表格线,仍然按上面介绍的方法添加。当然,斜线单元格的数据输入要麻烦一些,通常的做法是让数据在单元格内换行(按“Alt+回车键”),再添加空格即可将数据放到合适位置。 每次选定同一单元格 有时,为了测试某个公式,需要在某个单元格内反复输入多个测试值。但每次输入一个值后按下 Enter 键查看结果,活动单元格就会默认移到下一个单元格上,必须用鼠标或上移箭头重新选定原单元格,极不方便。如果你按“Ctrl+Enter”组合键,则问题会立刻迎刃而解,既能查看结果,当前单元格也仍为活动单元格。 禁止复制隐藏行或列中的数据 如果你复制了包含隐藏列(或行)的一个数据区域,然后把它粘贴到一个新的工作表,那么 Excel 把隐藏列也粘贴过来了。要想避免这种情况,可以选取你要复制的数据区域,然后选择“编辑→定位”命令,单击“定位条件”按钮,出现“定位条件”对话框,选中“可见单元格”选项,再复制和粘贴这个选定区域就会得到你所希望的结果。 制作个性单元格 如果你的表格需要菱形、三角形之类的特殊单元格,可用以下方法实现:先在单元格内输入数据,然后打开“绘图”工具栏,在“自选图形→基本形状”子菜单中找到需要的图形。单击后光标变成一个小十字,由单元格左上角向右下角拖动,即可画出所需形状的单元格。如果单元格的内容被覆盖,可用鼠标右击刚刚画出的单元格,选择快捷莱单中“设置自选图形格式”命令。将“设置自选图形格式”和“颜色与线条”选项卡打开,选中“颜色→填充”下拉列表下“无填充颜色”,“确定”后单元格内的原有内容即会显示出来。如果你将“属性”选项卡中的“大小、位置均随单元格而变”选项选中,它还会随单元格自动改变大小。 2 奇特的 F4 键 Excel 中有一个快捷键的作用极其突出,那就是 F4 键。作为“重复”键,F4 键可以重复前一次操作,在很多情况下起作用,比如在工作表内加入或删除一行,然后移动插入点并按下 F4 键以加入或删除另一行,根本不需要使用菜单 将格式化文本导入 Excel 1. 在 Windows“记事本”中输入格式化文本,每个数据项之间会被空格隔开,当然你也可以用逗号、分号、 Tab 键作为分隔符。输入完成后,保存此文本文件并退出; 2.在 Excel

jxl基本操作

熟悉JXL的概念:工作簿Workbook 、工作表sheet、单元格cell // 1. 创建Workbook工作薄 //使用file对象 File file = new File("E:/student.xls"); Workbook wb = Workbook.getWorkbook(file); // 使用input InputStream input = new FileInputStream(file); Workbook wb = Workbook.getWorkbook(input); // 2. 获取Sheet工作表 wb.getNumberOfSheets(); //sheet个数 wb.getSheets().length; //sheet个数 wb.getSheet(0).getName(); //获取sheet wb.getSheet("Sheet1").getName(); //sheet的名称 // 行/列数 sheet.getRows(); sheet.getColumns(); // 该行/列的单元格:cell[] sheet.getRow(0).length; sheet.getColumn(0).length; Cell cell = sheet.getCell(0, 0); cell.getContents(); //单元格内容String // cell的类型 cell.getType() == https://www.wendangku.net/doc/af14562572.html,BEL//class:LABEL 单元格的类型:LabelCell ,NumberCell 等,无须进行数据类型的转换。 File file = new File("E:/student.xls"); Workbook wb = Workbook.getWorkbook(file); Sheet sheet = wb.getSheet(0); int rows = sheet.getRows(); int cols = sheet.getColumns(); for (int row = 0; row < rows; row++) { for (int col = 0; col < cols; col++) { Cell cell = sheet.getCell(col, row); //注意:行列互换 // System.out.println(cell.getContents()); // 转换成相应的数据类型:无须进行“数据类型的转换”

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)

Excel-VBA-编程教程(完整新版)excel高级教程==

Excel_VBA_编程教程(完整版)excel高级教程VBA - Excel编程概念之:【单元格和区域】一、如何引用单元格和区域 使用Visual Basic 的普通任务是指定单元格或单元格区域,然后对该单元格或单元格区域进行一些操作,如输入公式或更改格式。通常用一条语句就能完成操作,该语句可标识单元格,还可更改某个属性或应用某个方法。 在Visual Basic 中,Range 对象既可表示单个单元格,也可表示单元格区域。下列主题说明了标识和处理Range 对象最常用的方法。 用A1 样式记号引用单元格和单元格区域 可使用Range 属性来引用A1 引用样式中的单元格或单元格区域。下述子程序将单元格区域A1:D5 的字体设置为加粗。 Sub FormatRange() Workbooks("Book1").Sheets("Sheet1").Range("A1:D5") _ .Font.Bold = True End Sub 下表演示了使用Range 属性的一些A1 样式引用。 引用含义 Range("A1") 单元格A1 Range("A1:B5") 从单元格A1 到单元格B5 的区域 Range("C5:D9,G9:H16") 多块选定区域 Range("A:A") A 列 Range("1:1") 第一行 Range("A:C") 从A 列到C 列的区域 Range("1:5") 从第一行到第五行的区域 Range("1:1,3:3,8:8") 第1、3 和8 行 Range("A:A,C:C,F:F") A 、C 和F 列 用编号引用单元格 通过使用行列编号,可用Cells 属性来引用单个单元格。该属性返回代表单个单元格的Range 对象。下例中,Cells(6,1) 返回Sheet1 上的单元格A6,然后将Value 属性设置为10。 Sub EnterValue() Worksheets("Sheet1").Cells(6, 1).Value = 10End Sub因为可用变量替代编号,所以Cells 属性非常适合于在单元格区域中循环,如下例所示。

java导出excel案例

JA V A实现EXCEL的导入和导出(四) JA V A EXCEL API简介 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); * 支持字体、数字、日期的格式化; * 支持单元格的阴影操作,以及颜色操作; * 修改已经存在的数据表; 现在还不支持以下功能,但不久就会提供了: 1. 不能够读取图表信息; 2. 可以读,但是不能生成公式,任何类型公式最后的计算值都可以读出; 回页首 应用示例 1 从Excel文件读取数据表 Java Excel API既可以从本地文件系统的一个文件(.xls),也可以从输入流中读取Excel数据表。读取Excel数据表的第一步是创建Workbook(术语:工作薄),下面的代码片段举例说明了应该如何操作:(完整代码见ExcelReading.java) import java.io.*; import jxl.*; … … … … try { //构建Workbook对象, 只读Workbook对象 //直接从本地文件创建Workbook //从输入流创建Workbook InputStream is = new FileInputStream(sourcefile); jxl.Workbook rwb = Workbook.getWorkbook(is); } catch (Exception e) { e.printStackTrace();

相关文档
相关文档 最新文档