yhef 发表于 2013-1-15 02:20:10

jxl写excel(转摘)

import java.io.FileOutputStream;import java.io.OutputStream;import jxl.Workbook;import jxl.write.WritableFont;import jxl.write.WritableSheet;import jxl.write.WritableWorkbook;public class JxlTest {public static void main(String[] args) throws Exception {// 输出文件名String targetfile = "D:\\out1.xls";// Sheet工作表名String worksheet = "Sheet1";// 工作表列标题String[] title = { "ID", "NAME", "DESCRIB" };WritableWorkbook workbook = null;try {OutputStream os = new FileOutputStream(targetfile);workbook = Workbook.createWorkbook(os);// 添加第一个工作表WritableSheet sheet = workbook.createSheet(worksheet, 0);// 添加第二个工作表WritableSheet sheet2 = workbook.createSheet("MySheet2", 1);/* * jxl.write.Label label = new jxl.write.Label(0, 2, "A label * record"); put a label in cell A3, Label (column,row) * sheet.addCell(label); */jxl.write.Label label;for (int i = 0; i < title.length; i++) {// Label(列号,行号 ,内容 )label = new jxl.write.Label(i, 0, title);// put the title in row1sheet.addCell(label);}// 下列添加的对字体等的设置均调试通过,可作参考用// 添加数字jxl.write.Number number = new jxl.write.Number(3, 4, 3.14159);// put the number 3.14159 in cell D5sheet.addCell(number);// 添加带有字型Formatting的对象jxl.write.WritableFont wf = new jxl.write.WritableFont(WritableFont.TIMES, 10, WritableFont.BOLD, true);jxl.write.WritableCellFormat wcfF = new jxl.write.WritableCellFormat(wf);jxl.write.Label labelCF = new jxl.write.Label(4, 4, "文本", wcfF); // E5sheet.addCell(labelCF);// 添加带有字体颜色,带背景颜色 Formatting的对象jxl.write.WritableFont wfc = new jxl.write.WritableFont(WritableFont.ARIAL, 10, WritableFont.BOLD, false,jxl.format.UnderlineStyle.NO_UNDERLINE,jxl.format.Colour.RED);jxl.write.WritableCellFormat wcfFC = new jxl.write.WritableCellFormat(wfc);wcfFC.setBackground(jxl.format.Colour.BLUE);jxl.write.Label labelCFC = new jxl.write.Label(1, 5, "带颜色", wcfFC); // B6sheet.addCell(labelCFC);// 添加带有formatting的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); // B2sheet.addCell(labelNF);// 添加Boolean对象jxl.write.Boolean labelB = new jxl.write.Boolean(0, 2, false);sheet.addCell(labelB); // A3// 添加DateTime对象jxl.write.DateTime labelDT = new jxl.write.DateTime(0, 3,new java.util.Date()); // A4sheet.addCell(labelDT);// 添加带有formatting的DateFormat对象jxl.write.DateFormat df = new jxl.write.DateFormat("ddMMyyyyhh:mm:ss");jxl.write.WritableCellFormat wcfDF = new jxl.write.WritableCellFormat(df);jxl.write.DateTime labelDTF = new jxl.write.DateTime(1, 3,new java.util.Date(), wcfDF);sheet.addCell(labelDTF); // B4sheet.removeRow(1);// 合并单元格// sheet.mergeCells(int col1,int row1,int col2,int row2);//左上角到右下角sheet.mergeCells(4, 5, 8, 10);// 左上角到右下角wfc = new jxl.write.WritableFont(WritableFont.ARIAL, 40,WritableFont.BOLD, false,jxl.format.UnderlineStyle.NO_UNDERLINE,jxl.format.Colour.GREEN);jxl.write.WritableCellFormat wchB = new jxl.write.WritableCellFormat(wfc);wchB.setAlignment(jxl.format.Alignment.CENTRE);labelCFC = new jxl.write.Label(4, 5, "单元合并", wchB);sheet.addCell(labelCFC);// 设置边框jxl.write.WritableCellFormat wcsB = new jxl.write.WritableCellFormat();wcsB.setBorder(jxl.format.Border.ALL,jxl.format.BorderLineStyle.THICK);labelCFC = new jxl.write.Label(0, 6, "边框设置", wcsB);sheet.addCell(labelCFC); // A7// 删除指定行sheet.removeRow(2);// sheet.removeColumn(arg0);// 设置图片// WritableImage wi = new WritableImage(10, 15, 12, 17,// new File("D:\\xxx.png"));// sheet.addImage(wi);workbook.write();} catch (Exception e) {e.printStackTrace();} finally {try {if (null != workbook)workbook.close();} catch (Exception e) {e.printStackTrace();throw e;}}}}
页: [1]
查看完整版本: jxl写excel(转摘)