《JL的各个类功能的解析.docx》由会员分享,可在线阅读,更多相关《JL的各个类功能的解析.docx(12页珍藏版)》请在三一办公上搜索。
1、JL的各个类功能的解析Excel的生成方式: Excel的生成方式其实很简单,主要包括几个大的类 首先最重要的几个类就是WritableWorkbook,这个类代表的就是一个Excel文档,使用过Excel文档的都应该知道Excel文档的组成,都是由一个一个的sheet组成的,那么这个sheet对应的java类就是WritableSheet。实际上就是这两个大类的组成,其他的一些小的类都是为了修饰WritableSheet里的内容的。 这些修饰类中用的最多的就是WritableFont , WritableCellFormat,以及Label类,这三个类构成了修WritableSheet的核心
2、。 抽象类Workbook 该类相当于是一个工具类用于生成Excel 方法: createWorkbook(File file) createWorkbook(File file,Workbook in) createWorkbook(java.io.OutputStream os) 提供了各种形式的产生Excel的方式 WritableWorkbook 该类是一个实际的可写的Workbook createSheet(java.lang.String name,int index) 该方法的作用是创建一个WorkSheet放在指定的位置 copy (Workbook book) 该方法的作用是
3、复制WritableWorkbook copySheet(int s,String name,int index) 该方法的作用是复制同一个workbook里处于s位置的sheet放到新的位置 index处 findByName(String name) 该方法的作用是获得名称为name的Range对象的数组 findCellByName(String name) 该方法的作用是获取名称为name的WritableCell对象 getNumberOfSheets 该方法的作用是获得workbook里sheet的个数 getRangeNames 该方法的作用是获得所有Range对象的名称所在的数
4、组 getSheet(int index) 该方法的作用根据位置获取WritableSheet getSheet(String name) 该方法的作用是根据名称来获去WritableSheet getSheetNames 该方法的作用是获得workbook里的所有sheet的名称所在的数组 getSheets 该方法的作用是获得workbook里的所有的sheet所在的数组 importSheet(String name,int index, Sheet sheet) 该方法的作用是从另外一个workbook里倒入一个sheet name为新生成的sheet的名称,index为新的sheet
5、在当前workbook里所 处的位置 moveSheet(int from,int to) 该方法的作用是移动一个sheet从from位置到to位置 removeRangeName(String name) 该方法的作用是移除名称为name的Range对象 removeSheet(int index) 该方法的作用是移除在index位置的sheet对象 setColorRGB(Colour c,int r,int g,int b) 该方法的作用是个workbook设置一定的颜色 setOutputFile(File file) 该方法的作用不太明确 setProtected(Boolean p
6、rotected) 该方法的作用是设置workbook是否为被保护 write 该方法非常重要,也就是生成一个Excel文档 (20) close 该方法非常重要,在最后需要调用这个方法,才能使生成的Excel有效 生成,否则,不写此句的话将会导致生成的Excel文件在打开时提示“文 件的格式与扩展名指定的格式不一致” 接口WritableSheet (1) addCell(WritableCell cell) 该方法的作用是添加单元格 需要注意的是一个Cell/Label只能使用一次 (2) addColumnPageBreak(int break) 该方法的作用不详 (3) addHype
7、rlink(WritableHyperlink link) 该方法的作用是设置超链接 addImage(WritableImage image) 该方法的作用是向Excel中添加图片 addRowPageBreak(int break) 该方法的作用不详同addColumnPageBreak(int break)一样 getImage(int i) 该方法的作用是获得sheet中的图片 getNumberOfImages 该方法的作用是获得sheet中的图片总数 getWritableCell(int column,int row) 该方法的作用是获得具体的某个单元格 getWritableH
8、yperlinks 该方法的作用是获得sheet里的所有超链接 insertColumn(int col) 该方法的作用是添加一列 insertRow(int row) 该方法的作用是添加一行 mergeCells(int col1,int row1,int col2,int row2) 该方法的作用是合并单元格 其中参数指的是需要合并的两个单元格所处的位置,也就是合并这两个单元格之间的所有单元格 removeColumn(int col) 该方法的作用是删除某一列 removeHyperlink(Hyperlink link) 该方法的作用是删除某一个超链接 removeImage(Writ
9、ableImage image) 该方法的作用是删除图片 removeRow(int row) 该方法的作用是删除一行 setColumnGroup(int col1, int col2, boolean collapsed) 该方法的作用是设置一个column组 setName(String sheetname) 该方法的作用是设置sheet的名称 setRowGroup(int row1,int row2,Boolean collapsed) 该方法的作用是设置一个row组 unmergeCells(Range r) 该方法的作用是合并单元格 unsetColumnGroup(int co
10、l1,int col2) 该方法的作用是解除column组,该方法是相对于setColumnGroup方法 unsetRowGroup(int row1,int row2) 该方法的作用是解除row组,该方法是相对于setRowGroup方法的 接口WritableCell (1) copyTo(int col,int row) 该方法的作用是深克隆某一行的某一列 getWritableCellFeatures 该方法的作用是获得WritableCellFeatures setCellFeatures(WritableCellFeatures wfs) 该方法的作用是设置WritableCel
11、lFeatures setCellFormat(CellFormat cf) 该方法的作用是对列表进行格式排版 WritableCellFeatures WritableFont 该类用于设定Excel的字体,经过测试,这个类似乎只是针对于Excel的Title有效,而对其内容体没有效果 构造函数 a. WritableFont(Font f) b. WritableFont(WritableFont.fontName fn) 根据WritableFont的常量来创建WritableFont c. WritableFont(WritableFont.fontName fn, int size)
12、 根据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的常量、字体的大小、字体的粗细以及是否斜体来创
13、建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
14、 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 createFont(java.l
15、ang.String fontName) 该方法的作用是根据名称来设置Excel的title的字体 setBoldStyle(BoldStyle boldStyle) 该方法的作用是设置Excel的title字体的粗细,但是对应的值只有两个 WritableFont.BOLD和WritableFont.NO_BOLD setColor(Color color) 该方法的作用是设置Excel的title字体的颜色 setItalic(Boolean italic) 该方法的作用是设置Excel的title字体是否为斜体 setPointSize(int size) 该方法的作用是设置Excel的
16、title字体的大小 setScriptStyle(ScriptStyle ss) 该方法的作用是设置Excel的title的效果,有三个值可供选择 ScriptStyle.SUBSCRIPT,ScriptStyle.SUPSCRIPT, ScriptStyle.NOMAL_SCRIPT 例如如果设置setScriptStyle(ScriptStyle.SUPSCRIPT)是如下效果 如果设置为SUBSCRIPT的话就是如下的样式 如果不做设置的话,即默认为NOMAL_SCRIPT则为如下所示 setUnderlineStyle(UnderlineStyle us) 该方法的作用是设置下划线的
17、样式 存在以下值可供选择 UnderlineStyle.DOUBLE UnderlineStyle.DOUBLE_ACCOUNTING UnderlineStyle.NO_UNDERLINE UnderlineStyle.SINGLE UnderlineStyle.SINGLE_ACCOUNTING从上面的结果可以得出SINGLE和DOUBLE只是在字体范围内加下划线,而SINGLE_ACCOUNTING和DOUBLE_ACCOUNTING则是在整个标题的范围内加下划线 类Label 该类的作用是设置列里的文本信息,此类实现了WritableCell接口 构造函数 a. Label(int c
18、, int r ,java.lang.String cont) 设置指定的行列的文本信息 b. Label(int c,int r,java.lang.String cont,CellFormat st) 设置指定的行列的的文本信息以及列的格式(这个构造是用的比较多的) c. Label(LabelCell lc) 根据LabelCell创建Label copyTo(int c, int r) 该方法的作用是深克隆指定的某一行的某一列 setString(String content) 该方法的作用是设置某一列的内容 类WritableCellFormat 该类的作用是设置列表的格式 尤其要注
19、意的是在实际的使用过程中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); WritableCel
20、lFormat format=new WritableCellFormat(font); Label label=new Label(int column,int row,String content, WritableCellFormat format); sheet.addCell(label); 构造函数 a. WritableCellFormat 默认的构造函数 b. WritableCellFormat c. WritableCellFormat d. WritableCellFormat e. WritableCellFormat setAlignment(Alignment al
21、ign) 该方法的作用是设置表格的对齐方式 可供选择的值有 jxl.format.Alignment.CENTREjxl.format.Alignment.FILL jxl.format.Alignment.GENERAL jxl.format.Alignment.JUSTIFY jxl.format.Alignment.LEFT jxl.format.Alignment.RIGHT (2) setBackground(Colour c) 该方法的作用是设置cell的背景颜色 可选的值均为Colour的常量对象 setBackground(Colour c,Pattern p) 该方法的作用是
22、设置cell的背景颜色和形式 setBorder(Border b,BorderLineStyle bs) 该方法的作用是设置Border setBorder(Border b,BorderLineStyle bs,Colour c) 该方法的作用也是设置Border setIndentation(int identation) 该方法的作用是设置单元格的缩进量 setLocked(Boolean lock) 该方法的作用设置此列的style是否锁定 setOrientation(Orientation.orientationname) 该方法的作用是设置列的方向 如下图为没有设置时的呈现 下
23、图为设置为Orientation.VERTICAL后的效果 下图为设置为Orientation.MINUS_45后的效果,所谓MINUS_45表示的也就 是整个表格呈现负的45度的效果,如果为Orientation.PLUS_45,则表示 的是列表呈现正的45度的效果 下图为设置为Orientation.HORIZONTAL后的效果 实际上在没有专门给定值的时候,默认值就是HORIZONTAL setShrinkToFit(Boolean flag) 该方法的作用是设置自适应大小 setVerticalAlignment(VerticalAlignment.alignment) 该方法的作用是设置单元格的垂直对齐方式 可供选择的值有VerticalAlignment.TOP/CENTER/BOTTOM/JUSTIFY setWrap(Boolean flag) 该方法的作用是设置自动换行 LabelCell