jxl操作excel(8)

2019-02-15 13:06

53. public void setChildren(Set children) { 54. this.children = children; 55. } 56. 57.}

jxl的一些总结

要往xls文件里面写入数据的时候需要注意的是第一要新建一个xls文件 OutputStream os=new FileOutputStream(\

再建完这个文件的时候再建立工作文件

jxl.write.WritableWorkbook wwb = Workbook.createWorkbook(new File(os));

如果这个文件已经存在,那么我们可以在这个文件里面加入一个sheet为了和以前的数据进行分开;

jxl.write.WritableSheet ws = wwb.createSheet(\在createSheet方法里前面的参数是sheet名,后面是要操作的sheet号

接下来就可以往这个文件里面写入数据了

写入数据的时候注意的格式

(1)添加的字体样式

jxl.write.WritableFont wf = new jxl.write.WritableFont(WritableFont.TIMES, 18, WritableFont.BOLD, true); WritableFont()方法里参数说明:

这个方法算是一个容器,可以放进去好多属性 第一个: TIMES是字体大小,他写的是18

第二个: BOLD是判断是否为斜体,选择true时为斜体 第三个: ARIAL

第四个: UnderlineStyle.NO_UNDERLINE 下划线 第五个: jxl.format.Colour.RED 字体颜色是红色的

jxl.write.WritableCellFormat wcfF = new jxl.write.WritableCellFormat(wf);

jxl.write.Label labelC = new jxl.write.Label(0, 0, \,wcfF); ws.addCell(labelC);

在Label()方法里面有三个参数 第一个是代表列数, 第二是代表行数, 第三个代表要写入的内容

第四个是可选项,是输入这个label里面的样式

然后通过写sheet的方法addCell()把内容写进sheet里面。

(2)添加带有formatting的Number对象

jxl.write.NumberFormat nf = new jxl.write.NumberFormat(\

(3)添加Number对象

(3.1)显示number对象数据的格式

jxl.write.NumberFormat nf = new jxl.write.NumberFormat(\jxl.write.WritableCellFormat wcfN = new jxl.write.WritableCellFormat(nf);

jxl.write.Number labelNF = new jxl.write.Number(1, 1, 3.1415926, wcfN); ws.addCell(labelNF); Number()方法参数说明: 前两上表示输入的位置 第三个表示输入的内容

(4)添加Boolean对象

jxl.write.Boolean labelB = new jxl.write.Boolean(0, 2, false); ws.addCell(labelB);

(5)添加DateTime对象

jxl.write.DateTime labelDT = new jxl.write.DateTime(0, 3, new java.util.Date()); ws.addCell(labelDT); DateTime()方法的参数说明 前两个表示输入的位置 第三个表示输入的当前时间

(6)添加带有formatting的DateFormat对象 这个显示当前时间的所有信息,包括年月日小时分秒

jxl.write.DateFormat df = new jxl.write.DateFormat(\jxl.write.WritableCellFormat wcfDF = new jxl.write.WritableCellFormat(df);

jxl.write.DateTime labelDTF = new jxl.write.DateTime(1, 3, new java.util.Date(), wcfDF); ws.addCell(labelDTF);

(7)添加带有字体颜色Formatting的对象

jxl.write.WritableFont wfc = new jxl.write.WritableFont(WritableFont.ARIAL, 10, WritableFont.NO_BOLD, false,UnderlineStyle.NO_UNDERLINE, jxl.format.Colour.RED); jxl.write.WritableCellFormat wcfFC = new jxl.write.WritableCellFormat(wfc);

import=\

jxl.write.WritableFont wfc = new

jxl.write.WritableFont(WritableFont.ARIAL,20,WritableFont.BOLD,false,UnderlineStyle.NO_UNDERLINE,jxl.format.Colour.GREEN);

(8)设置单元格样式

jxl.write.WritableCellFormat wcfFC = new jxl.write.WritableCellFormat(wfc); wcfFC.setBackGround(jxl.format.Colour.RED);//设置单元格的颜色为红色 wcfFC = new jxl.write.Label(6,0,\

可以读,但是不能生成公式,任何类型公式最后的计算值都可以读出; 应用示例

从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(); }

一旦创建了Workbook,我们就可以通过它来访问Excel Sheet(术语:工作表)。参考下面的代码片段:

//获取第一张Sheet表 Sheet rs = rwb.getSheet(0);

我们既可能通过Sheet的名称来访问它,也可以通过下标来访问它。如果通过下标来访问的话,要注意的一点

是下标从0开始,就像数组一样。

一旦得到了Sheet,我们就可以通过它来访问Excel Cell(术语:单元格)。参考下面的代码片段:

//获取第一行,第一列的值 Cell c00 = rs.getCell(0, 0); String strc00 = c00.getContents(); //获取第一行,第二列的值 Cell c10 = rs.getCell(1, 0); String strc10 = c10.getContents(); //获取第二行,第二列的值 Cell c11 = rs.getCell(1, 1); String strc11 = c11.getContents();

System.out.println(\c00.getType());

System.out.println(\c10.getType());

System.out.println(\c11.getType());

如果仅仅是取得Cell的值,我们可以方便地通过getContents()方法,它可以将任何类型的Cell值都作为一个

字符串返回。示例代码中Cell(0, 0)是文本型,Cell(1, 0)是数字型,Cell(1,1)是日期型,通过getContents()

,三种类型的返回值都是字符型。

如果有需要知道Cell内容的确切类型,API也提供了一系列的方法。参考下面的代码片段: String strc00 = null; double strc10 = 0.00; Date strc11 = null; Cell c00 = rs.getCell(0, 0); Cell c10 = rs.getCell(1, 0); Cell c11 = rs.getCell(1, 1);

if(c00.getType() == CellType.LABEL) {

LabelCell labelc00 = (LabelCell)c00; strc00 = labelc00.getString(); }

if(c10.getType() == CellType.NUMBER) {

NmberCell numc10 = (NumberCell)c10; strc10 = numc10.getValue(); }

if(c11.getType() == CellType.DATE)


jxl操作excel(8).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:电阻炉温度控制系统毕业设计

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: