java操作Excel(从我的CSDN搬过来的)(三)

2014-11-24 11:03:46 · 作者: · 浏览: 2
(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.format.*
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=\'#\'" //设置单元格的颜色为红色
wcfFC = new jxl.write.Label(6,0,"i love china",wcfFC);
下面是一段网友操作的例子:
我写的练习代码如下:(注意里面的图片替换成自己的就可以了)
import java.io.*;
import java.util.Random;
import java.util.Date;
import jxl.*;
import jxl.format.UnderlineStyle;
import jxl.write.*;
import jxl.write.Number;
import jxl.write.Boolean;
public class CreateXL
{
public CreateXL()
{
}
public static void main(String[] args)
{
//读Excel
//CreateXL.readExcel("d:/abc.xls");
//创建新的Excel
CreateXL.writeExcel("d:/new.xls");
//更新Excel
CreateXL.updateExcel("d:/new.xls");
}
//jxl暂时不提供修改已经存在的数据表,这里通过一个小办法来达到这个目的,不适合大型数据更新!
//这里是通过覆盖原文件来更新的.
public static void updateExcel(String filePath)
{
try
{
Workbook rwb = Workbook.getWorkbook(new File(filePath));
WritableWorkbook wwb = Workbook.createWorkbook(new File("d:/new.xls"),rwb);//copy
WritableSheet ws = wwb.getSheet(0);
WritableCell wc = ws.getWritableCell(0,0);
//判断单元格的类型,做出相应的转换
Label label = (Label)wc;
label.setString("The value has been modified");
wwb.write();
wwb.close();
rwb.close();
}
catch(Exception e)
{
e.printStackTrace();
}
}
public static void writeExcel(String filePath)
{
try
{
//创建工作薄
WritableWorkbook wwb = Workbook.createWorkbook(new File(filePath));
//创建工作表
WritableSheet ws = wwb.createSheet("Sheet1",0);
//System.out.println("create ok!");
//添加标签文本
Random rnd=new Random((new Date()).getTime());
int forNumber=rnd.nextInt(100);
for(int i=0;i
{
ws.addCell(new Number(rnd.nextInt(50),rnd.nextInt(50),rnd.nextInt(1000)));
}
//添加图片(注意此处jxl暂时只支持png格式的图片)
//0,1分别代表x,y 2,5代表宽和高占的单元格数
ws.addImage(new WritableImage(0,1,2,5,new File("png//cs.png")));
wwb.write();
wwb.close();
}
catch(Exception e)
{
System.out.println(e.toString());
}
}
public static void readExcel(String filePath)
{
/**
*后续考虑问题,比如Excel里面的图片以及其他数据类型的读取
**/
try
{
InputStream is=new FileInputStream(filePath);
//声名一个工作薄
Workbook rwb = Workbook.ge