import java.io.file;
import java.util.*;
import jxl.*;
import jxl.write.*;
/**
* <p>title: 操作excel文件</p>
* <p>description: 本实例演示使用jxl包实现对excel文件的操作</p>
* <p>copyright: copyright (c) 2003</p>
* <p>filename: myexcel.java</p>
* @version 1.0
*/
public class myexcel{
workbook workbook;
sheet sheet;
/**
*<br>方法说明:写入文件操作
*<br>输入参数:
*<br>返回类型:
*/
public void write(){
try{
//创建一个可写入的excel文件对象
writableworkbook workbook = workbook.createworkbook(new file("myfile.xls"));
//使用第一张工作表,将其命名为“午餐记录”
writablesheet sheet = workbook.createsheet("午餐记录", 0);
//表头
label label0 = new label(0, 0, "时间");
sheet.addcell(label0);
label label1 = new label(1, 0, "姓名");
sheet.addcell(label1);
label label2 = new label(2, 0, "午餐标准");
sheet.addcell(label2);
label label3 = new label(3, 0, "实际费用");
sheet.addcell(label3);
//格式化日期
jxl.write.dateformat df = new jxl.write.dateformat("yyyy-dd-mm hh:mm:ss");
jxl.write.writablecellformat wcfdf = new jxl.write.writablecellformat(df);
jxl.write.datetime labeldtf = new jxl.write.datetime(0, 1, new java.util.date(), wcfdf);
sheet.addcell(labeldtf);
//普通字符
label labelcfc = new label(1, 1, "riverwind");
sheet.addcell(labelcfc);
//格式化数字
jxl.write.numberformat nf = new jxl.write.numberformat("#.##");
writablecellformat wcfn = new writablecellformat(nf);
jxl.write.number labelnf = new jxl.write.number(2, 1, 13.1415926, wcfn);
sheet.addcell(labelnf);
jxl.write.number labelnnf = new jxl.write.number(3, 1, 10.50001, wcfn);
sheet.addcell(labelnnf);
//关闭对象,释放资源
workbook.write();
workbook.close();
}catch(exception e){
system.out.println(e);
}
}
/**
*<br>方法说明:读取excel文件一行数据
*<br>输入参数:int row指定的行数
*<br>返回类型:string〔〕结果数组
*/
public string[] readline(int row){
try{
//获取数据表列数
int colnum = sheet.getcolumns();
string[] rest = new string[colnum];
for(int i = 0; i < colnum; i++){
string stemp = read(i,row);
if(stemp!=null)
rest[i] = stemp;
}
return rest;
}catch(exception e){
system.out.println("readline err:"+e);
workbook.close();
return null;
}
}
/**
*<br>方法说明:读取excel的指定单元数据
*<br>输入参数:
*<br>返回类型:
*/
public string read(int col, int row){
try{
//获得单元数据
cell a2 = sheet.getcell(col,row);
string rest = a2.getcontents();
return rest;
}catch(exception e){
system.out.println("read err:"+e);
workbook.close();
return null;
}
}
/**
*<br>方法说明:主方法,演示程序用
*<br>输入参数:
*<br>返回类型:
*/
public static void main(string[] arges){
try{
myexcel me = new myexcel();
//生成一个可读取的excel文件对象
me.workbook = workbook.getworkbook(new file("myfile.xls"));
//使用第一个工作表
me.sheet = me.workbook.getsheet(0);
//读一行记录,并显示出来
string[] sstemp = me.readline(1);
for(int i=0;i<sstemp.length;i++)
system.out.println(sstemp[i]);
//写入数据
me.write();
me.workbook.close();
}catch(exception e){
system.out.println(e);
}
}
}
闽公网安备 35060202000074号