`
lenovosec
  • 浏览: 17223 次
  • 性别: Icon_minigender_1
  • 来自: 北京
最近访客 更多访客>>
文章分类
社区版块
存档分类
最新评论

JXL操作EXCEL

 
阅读更多

读取

package com.ibm.excel.jxl;

import java.io.FileInputStream;
import java.io.InputStream;

import jxl.Cell;
import jxl.Sheet;
import jxl.Workbook;

/**
 * 读取EXCEL工作表
 * 
 * @author 2010-02-02
 */
public class ReadExcel {

	public static void main(String[] args) {
		
		readWorkbook("resources/JXL.xls");
		
	}

	public static void readWorkbook(String path) {
		
		try {
			//创建工作薄Workbook
			InputStream is = new FileInputStream(path);
			Workbook rwb = Workbook.getWorkbook(is);
			
			
			//工作表的个数
			int count = rwb.getNumberOfSheets();
			System.out.println("工作表的个数-------------------" + count);
			
			
			//工作表数组
			Sheet[] sheets = rwb.getSheets();
			System.out.println("所有工作表的名称-----------------");
			for(int i=0; i<sheets.length; i++) {
				System.out.print(sheets[i].getName() + "\r");
			}
			
			
			//正在使用的API的版本号
			System.out.println("API版本号--------------------" + Workbook.getVersion());
			
			
			//获取第一张工作表Sheet,下标从0开始,或者通过名称来访问
			Sheet rs = rwb.getSheet(0);
			
			
			//工作表的总列数
			System.out.println("工作表的总列数------------------" + rs.getColumns());
			
			
			//工作表的总行数
			System.out.println("工作表的总行数------------------" + rs.getRows());
			
			
			//获取第5列所有单元格
			Cell[] cells = rs.getColumn(4);
			System.out.println("第5列的所有单元格----------------");
			for(int i=0; i<cells.length; i++) {
				System.out.println(cells[i].getContents());
			}
			
			
			//获取第4行所有数据
			Cell[] rows = rs.getRow(3);
			System.out.println("第4行的所有单元格----------------");
			for(int i=0; i<rows.length; i++) {
				System.out.println(rows[i].getContents());
			}
			
			
			//通过工作表来访问单元格Cell
			Cell c00 = rs.getCell(0, 0); //获取第1列第1行的值
			Cell c01 = rs.getCell(0, 1); //获取第1列第2行的值
			Cell c02 = rs.getCell(0, 2); //获取第1列第3行的值
			Cell c03 = rs.getCell(0, 3); //获取第1列第4行的值
			//第二列的数据
			Cell c10 = rs.getCell(1, 0); //获取第2列第1行的值
			Cell c11 = rs.getCell(1, 1); //获取第2列第2行的值
			Cell c12 = rs.getCell(1, 2); //获取第2列第3行的值
			Cell c13 = rs.getCell(1, 3); //获取第2列第4行的值
			//第五列的数据
			Cell c50 = rs.getCell(5, 0); //获取第6列第1行的值
			Cell c51 = rs.getCell(5, 1); //获取第6列第2行的值
			Cell c52 = rs.getCell(5, 2); //获取第6列第3行的值
			Cell c53 = rs.getCell(5, 3); //获取第6列第4行的值
			
			
			System.out.println("\n\n" + c00.getContents() + 
				"\t\t" + c10.getContents() + "\t\t" + c50.getContents());
			System.out.println(c01.getContents() + 
				"\t" + c11.getContents() + "\t\t" + c51.getContents());
			System.out.println(c02.getContents() + 
				"\t" + c12.getContents() + "\t\t" + c52.getContents());
			System.out.println(c03.getContents() + 
				"\t" + c13.getContents() + "\t\t" + c53.getContents());
			
			
			//关闭对象,释放内存空间
			rwb.close();
		} catch (Exception e) {
			e.printStackTrace();
		} 
	}
}
 

 

创建EXCEL文件

package com.ibm.excel.jxl;

import java.io.File;
import java.util.Date;

import jxl.Workbook;
import jxl.format.Colour;
import jxl.format.UnderlineStyle;
import jxl.write.Boolean;
import jxl.write.DateFormat;
import jxl.write.DateTime;
import jxl.write.Label;
import jxl.write.Number;
import jxl.write.NumberFormat;
import jxl.write.WritableCellFormat;
import jxl.write.WritableFont;
import jxl.write.WritableSheet;
import jxl.write.WritableWorkbook;

/**
 * 创建可写入的EXCEL工作薄
 * 
 * @author 2010-02-02
 */
public class WriteExcel {

	public static void main(String[] args) {
		
		writeWorkbook("resources/NEW.xls");
		
	}

	public static void writeWorkbook(String file) {

		try {
			//创建可写入的Excel工作薄
			WritableWorkbook wwb = Workbook.createWorkbook(new File(file));

			//创建工作表,参数为名称和位置
			WritableSheet ws = wwb.createSheet("20100202工作表", 0);
			
			//设置列宽
			ws.setColumnView(0, 60);
			ws.setColumnView(1, 60);
			
			//向工作表添加数据
			Label labelC = new Label(0, 0, "中关村软件园 www.zpark.com.cn"); //添加Label对象
			ws.addCell(labelC);
			

			WritableFont wf = new WritableFont(WritableFont.TIMES, 18,
					WritableFont.BOLD, true); //添加带有字型Formatting的对象
			WritableCellFormat wcfF = new WritableCellFormat(wf);
			Label labelCF = new Label(1, 0, "IBM中国系统中心 www.ibm.com.cn", wcfF);
			ws.addCell(labelCF);

			
			WritableFont wfc = new WritableFont(WritableFont.ARIAL, 10,
					WritableFont.NO_BOLD, false, UnderlineStyle.NO_UNDERLINE,
					Colour.RED); //添加带有字体颜色Formatting的对象
			WritableCellFormat wcfFC = new WritableCellFormat(wfc);
			Label labelCFC = new Label(1, 2, "南京市新街口 www.***.com", wcfFC);
			ws.addCell(labelCFC);

			
			Number labelN = new Number(0, 1, 3.1415926); //添加Number对象
			ws.addCell(labelN);
			NumberFormat nf = new NumberFormat("#.##");
			WritableCellFormat wcfN = new WritableCellFormat(nf);
			Number labelNF = new Number(1, 1, 3.1415926, wcfN);
			ws.addCell(labelNF);

			
			Boolean labelB = new Boolean(0, 2, false); //添加Boolean对象
			ws.addCell(labelB);

			
			DateTime labelDT = new DateTime(0, 3, new Date()); //添加DateTime对象
			ws.addCell(labelDT);
			DateFormat df = new DateFormat("dd MM yyyy hh:mm:ss");
			WritableCellFormat wcfDF = new WritableCellFormat(df);
			DateTime labelDTF = new DateTime(1, 3, new Date(), wcfDF);
			ws.addCell(labelDTF);

			
			//写入工作表
			wwb.write();

			//关闭工作薄
			wwb.close();

		} catch (Exception e) {
			e.printStackTrace();
		}
	}

}

 

  • jxl.jar (708.7 KB)
  • 描述: JXL依赖JAR包
  • 下载次数: 1
分享到:
评论
发表评论

文章已被作者锁定,不允许评论。

相关推荐

Global site tag (gtag.js) - Google Analytics