JXL操作EXCEL的各个类的解析

更新时间:2024-05-05 07:12:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

JXL操作EXCEL的各个类的解析:

Excel的生成方式其实很简单,主要包括几个大的类

首先最重要的几个类就是WritableWorkbook,这个类代表的就是一个Excel文档,使用过Excel文档的都应该知道Excel文档的组成,都是由一个一个的sheet组成的,那么这个sheet对应的java类就是WritableSheet。实际上就是这两个大类的组成,其他的一些小的类都是为了修饰WritableSheet里的内容的。 这些修饰类中用的最多的就是WritableFont ,

WritableCellFormat,以及Label类,这三个类构成了修WritableSheet的核心。

<一>抽象类Workbook

该类相当于是一个工具类用于生成Excel 方法:

createWorkbook(File file) //file导的是Io下的包new File(“文件名.后缀名”) (1)

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对象所在的数组

(11)getVersion()

该方法的作用是获得版本号

(12)getWorkbook(File file)

该方法的作用就是获得一个Excel对象

(13)getWorkbook(File file,WorkbookSettings wss)

该方法的作用是获取一个Excel对象

(14)isProtected()

该方法的作用是Excel是否是受保护的

<二>WritableWorkbook

该类是一个实际的可写的Workbook

(1)createSheet(java.lang.String name,int index)

该方法的作用是创建一个WorkSheet放在指定的位置(0开始)

(2)copy (Workbook book)

该方法的作用是复制WritableWorkbook

(3)copySheet(int s,String name,int index)

该方法的作用是复制同一个workbook里处于s位置的sheet放到新的位置

index处

(4)findByName(String name)

该方法的作用是获得名称为name的Range对象的数组

(5)findCellByName(String name)

该方法的作用是获取名称为name的WritableCell对象

(6)getNumberOfSheets()

该方法的作用是获得workbook里sheet的个数

(7)getRangeNames()

该方法的作用是获得所有Range对象的名称所在的数组

(8)getSheet(int index)

该方法的作用根据位置获取WritableSheet

(9)getSheet(String name)

该方法的作用是根据名称来获去WritableSheet

(10)getSheetNames()

该方法的作用是获得workbook里的所有sheet的名称所在的数组

(11)getSheets()

该方法的作用是获得workbook里的所有的sheet所在的数组

(12)importSheet(String name,int index, Sheet sheet)

该方法的作用是从另外一个workbook里倒入一个sheet

name为新生成的sheet的名称,index为新的sheet在当前workbook里所 处的位置

(13)moveSheet(int from,int to)

该方法的作用是移动一个sheet从from位置到to位置

(14)removeRangeName(String name)

该方法的作用是移除名称为name的Range对象

(15)removeSheet(int index)

该方法的作用是移除在index位置的sheet对象

(16)setColorRGB(Colour c,int r,int g,int b)

该方法的作用是个workbook设置一定的颜色

(17)setOutputFile(File file)

该方法的作用不太明确

(18)setProtected(Boolean protected)

该方法的作用是设置workbook是否为被保护

(19)write()

该方法非常重要,也就是生成一个Excel文档

(20)close()

该方法非常重要,在最后需要调用这个方法,才能使生成的Excel有效生成,否则,不写此句的话将会导致生成的Excel文件在打开时提示“文件的格式与扩展名指定的格式不一致”

<三>接口WritableSheet

(1)addCell(WritableCell cell)

该方法的作用是添加单元格

需要注意的是一个Cell/Label只能使用一次

(2)addColumnPageBreak(int break)

该方法的作用不详

(3)addHyperlink(WritableHyperlink link)

该方法的作用是设置超链接

(4)addImage(WritableImage image)

该方法的作用是向Excel中添加图片

对于JExcelAPI来说只支持对PNG图片的操作,而POI的功能则会更加强大一些

(5)addRowPageBreak(int break)

该方法的作用不详同addColumnPageBreak(int break)一样

(6)getImage(int i)

该方法的作用是获得sheet中的图片

(7)getNumberOfImages()

该方法的作用是获得sheet中的图片总数

(8)getWritableCell(int column,int row)

该方法的作用是获得具体的某个单元格

(9)getWritableHyperlinks()

该方法的作用是获得sheet里的所有超链接

(10)insertColumn(int col)

该方法的作用是添加一列

(11)insertRow(int row)

该方法的作用是添加一行

(12)mergeCells(int col1,int row1,int col2,int row2)

该方法的作用是合并单元格

其中参数指的是需要合并的两个单元格所处的位置,也就是合并这两个单元格之间的所有单元格

(13)removeColumn(int col)

该方法的作用是删除某一列

(14)removeHyperlink(Hyperlink link)

该方法的作用是删除某一个超链接

(15)removeImage(WritableImage image)

该方法的作用是删除图片

(16)removeRow(int row)

该方法的作用是删除一行

(17)setColumnGroup(int col1, int col2, boolean collapsed)

该方法的作用是设置一个column组

(18)setName(String sheetname)

该方法的作用是设置sheet的名称

(19)setRowGroup(int row1,int row2,Boolean collapsed)

该方法的作用是设置一个row组

(20)unmergeCells(Range r)

该方法的作用是合并单元格

(21)unsetColumnGroup(int col1,int col2)

该方法的作用是解除column组,该方法是相对于setColumnGroup方法

(22)unsetRowGroup(int row1,int row2)

该方法的作用是解除row组,该方法是相对于setRowGroup方法的

(23)setColumnView(int column,int width) 该方法的作用是设置一个某一列的宽度 (24)setRowView(int row,int height) 该方法的作用是设置某一行的高度

<四>接口WritableCell

(1) copyTo(int col,int row)

该方法的作用是深克隆某一行的某一列

(2)getWritableCellFeatures()

该方法的作用是获得WritableCellFeatures

(3)setCellFeatures(WritableCellFeatures wfs)

该方法的作用是设置WritableCellFeatures

(4)setCellFormat(CellFormat cf)

该方法的作用是对列表进行格式排版

<五>WritableCellFeatures

<六>WritableFont

该类用于设定Excel的字体

(1)构造函数

a. WritableFont(Font f)

b. WritableFont(WritableFont.fontName fn) 根据WritableFont的常量来创建WritableFont

c. WritableFont(WritableFont.fontName fn, int size)

根据WritableFont的常量以及字体的大小来创建WritableFont d. WritableFont(WritableFont.fontName fn, int size, WritableFont.BoldStyle fb)

根据WritableFont的常量、字体的大小以及字体的粗细来创建 WritableFont

e. WritableFont(WritableFont.fontName fn, int size, WritableFont.BoldStyle fb, boolean italic)

根据WritableFont的常量、字体的大小、字体的粗细以及是否斜体来创 建WritableFont

f. WritableFont(WritableFont.FontName fn,int ps,

jxl.write.WritableFont.BoldStyle bs,boolean it, UnderlineStyle us)

根据WritableFont的常量,字体的大小,字体的粗细,是否斜体,下划 线样式来创建 WritableFont

g. WritableFont(WritableFont.FontName fn, int ps,jxl.write.WritableFont.BoldStyle bs, boolean it, UnderlineStyle us, Colour c)

根据WritableFont的常量,字体的大小,字体的粗细,是否斜体,下划线 样式以及颜色来创建WritableFont

h. WritableFont(WritableFont.FontName fn,

int ps,jxl.write.WritableFont.BoldStyle bs,

boolean it, UnderlineStyle us, Colour c, ScriptStyle ss) 根据WritableFont的常量,字体的大小,字体的粗细,是否斜体,下划线 样式,颜色以及脚本来创建WritableFont

(2)createFont(java.lang.String fontName)

该方法的作用是根据名称来设置Excel的title的字体

(3)setBoldStyle(BoldStyle boldStyle)

该方法的作用是设置Excel的title字体的粗细,但是对应的值只有两个 WritableFont.BOLD和WritableFont.NO_BOLD

(4)setColor(Color color)

该方法的作用是设置Excel的title字体的颜色

(5)setItalic(Boolean italic)

该方法的作用是设置Excel的title字体是否为斜体

(6)setPointSize(int size)

该方法的作用是设置Excel的title字体的大小

(7)setScriptStyle(ScriptStyle ss)

该方法的作用是设置Excel的title的效果,有三个值可供选择 ScriptStyle.SUBSCRIPT,ScriptStyle.SUPSCRIPT, ScriptStyle.NOMAL_SCRIPT

例如如果设置setScriptStyle(ScriptStyle.SUPSCRIPT)是如下效果

如果设置为SUBSCRIPT的话就是如下的样式

如果不做设置的话,即默认为NOMAL_SCRIPT则为如下所示

(8)setUnderlineStyle(UnderlineStyle us) 该方法的作用是设置下划线的样式 存在以下值可供选择 UnderlineStyle.DOUBLE

UnderlineStyle.DOUBLE_ACCOUNTING

UnderlineStyle.NO_UNDERLINE

UnderlineStyle.SINGLE

UnderlineStyle.SINGLE_ACCOUNTING 从上面的结果可以得出SINGLE和DOUBLE只是在字体范围内加下划线,而SINGLE_ACCOUNTING和DOUBLE_ACCOUNTING则是在整个标题的范围内加下划线

<六>类Label

该类的作用是设置列里的文本信息,此类实现了WritableCell接口

(1)构造函数

a. Label(int c, int r ,java.lang.String cont) 设置指定的行列的文本信息

b. Label(int c,int r,java.lang.String cont,CellFormat st)

设置指定的行列的的文本信息以及列的格式(这个构造是用的比较多的) c. Label(LabelCell lc) 根据LabelCell创建Label

(2)copyTo(int c, int r)

该方法的作用是深克隆指定的某一行的某一列

(3)setString(String content)

该方法的作用是设置某一列的内容

<七>类WritableCellFormat

该类的作用是设置列表的格式

尤其要注意的是在实际的使用过程中WritableCellFormat是同WritableFont,Label共同使用的 例如:

WritableWorkbook book=Workbook.createWorkbook(new File(String path)); WritableSheet sheet=book.createSheet(String sheetname,int index); WritableFont font=new WritableFont(WritableFont.fontname , fontsize,BoldStyle.boldstylename);

WritableCellFormat format=new WritableCellFormat(font); Label label=new Label(int column,int row,String content, WritableCellFormat format); sheet.addCell(label);

(1)构造函数

a. WritableCellFormat() 默认的构造函数

b. WritableCellFormat(CellFormat format) c. WritableCellFormat(DisplayFormat format) d. WritableCellFormat(WritableFont font)

e. WritableCellFormat(WritableFont font,DisplayFormat format)

(2)setAlignment(Alignment align)

该方法的作用是设置表格的对齐方式 可供选择的值有 jxl.format.Alignment.CENTRE

jxl.format.Alignment.FILL

jxl.format.Alignment.GENERAL

jxl.format.Alignment.JUSTIFY

jxl.format.Alignment.LEFT

jxl.format.Alignment.RIGHT

(3) setBackground(Colour c)

该方法的作用是设置cell的背景颜色 可选的值均为Colour的常量对象

(4)setBackground(Colour c,Pattern p)

该方法的作用是设置cell的背景颜色和形式

(5)setBorder(Border b,BorderLineStyle bs)

该方法的作用是设置Border

(6)setBorder(Border b,BorderLineStyle bs,Colour c)

该方法的作用也是设置Border

(7)setIndentation(int identation)

该方法的作用是设置单元格的缩进量

(8)setLocked(Boolean lock)

该方法的作用设置此列的style是否锁定

(9)setOrientation(Orientation.orientationname)

该方法的作用是设置列的方向 如下图为没有设置时的呈现

下图为设置为Orientation.VERTICAL后的效果

下图为设置为Orientation.MINUS_45后的效果,所谓MINUS_45表示的也就 是整个表格呈现负的45度的效果,如果为Orientation.PLUS_45,则表示 的是列表呈现正的45度的效果

下图为设置为Orientation.HORIZONTAL后的效果

实际上在没有专门给定值的时候,默认值就是HORIZONTAL

(10)setShrinkToFit(Boolean flag)

该方法的作用是设置自适应大小

(11)setVerticalAlignment(VerticalAlignment.alignment)

该方法的作用是设置单元格的垂直对齐方式

可供选择的值有VerticalAlignment.TOP/CENTER/BOTTOM/JUSTIFY

(12)setWrap(Boolean flag)

该方法的作用是设置自动换行

本文来源:https://www.bwwdw.com/article/cmfg.html

Top