文章From : http://blog.sina.com.cn/s/blog_8d960c4c0101cd7n.html
import java.io.File;
import java.io.IOException;
import java.util.Date;
import jxl.Workbook;
import jxl.write.DateFormat;
import jxl.write.DateTime;
import jxl.write.NumberFormat;
import jxl.write.WritableSheet;
import jxl.write.WritableWorkbook;
import jxl.write.Label;
import jxl.write.WritableCellFormat;
import jxl.write.WritableFont;
import jxl.write.WritableImage;
import jxl.write.Number;
import jxl.write.Boolean;
public class Test {
//生成excel文件
public static void writeExcel() throws IOException{
try{
String Divpath = “d:\test”;//文件保存路径
File dirFile = new File(Divpath);
if(!dirFile.exists()){//文件路径不存在时,自动创建目录
dirFile.mkdir();
}
String path = Divpath+”\test.xls”;//文件名字
//创建一个可写入的excel文件对象
WritableWorkbook workbook = Workbook.createWorkbook(new File(path));
//使用第一张工作表,将其命名为“测试”
WritableSheet sheet = workbook.createSheet(“测试”, 0);

        //设置字体种类和格式
         WritableFont bold = new WritableFont(WritableFont.ARIAL, 16, WritableFont.BOLD);
         WritableCellFormat wcfFormat = new WritableCellFormat(bold);
         wcfFormat.setAlignment(jxl.format.Alignment.CENTRE);//单元格中的内容水平方向居中
        //单元格是字符串格式!第一个是代表列数,第二是代表行数,第三个代表要写入的内容,第四个代表字体格式  (0代表excel的第一行或者第一列)   
         Label label01 = new Label(0, 0, "测试数据:",wcfFormat); //这里的(0,0)表示第一行第一列的表格       
         sheet.addCell(label01);
         Label label02 = new Label(1, 0, "测试的结果是成功的");            
         sheet.addCell(label02);
        //合并单元格,合并既可以是横向的,也可以是纵向的       
     //这里的第一个数据代表第二列,第二个数据代表第一行,第三个数据代表第四列,第四个数据代表第二行
      sheet.mergeCells(1, 0, 3, 1);
      //设置第2行的高度
         sheet.setRowView(1,400,false);       
         //设置列宽
         sheet.setColumnView(0, 15);
         sheet.setColumnView(1, 40);
        //插入图片
         File file=new File("d:\\test\\123.png");            
        //WritableImage前面四个参数的类型都是double,依次是 x, y, width, height,这里的宽和高可不是图片的宽和高,而是图片所要占的单位格的个数
         WritableImage image=new WritableImage(1, 3, 1, 3,file);
         sheet.addImage(image);
         //整型数据
         Number label2 = new Number(0, 1,31415926);
         sheet.addCell(label2);
        //添加带有formatting的Number对象
            NumberFormat nf = new NumberFormat("#.##");
            WritableCellFormat wcfN = new WritableCellFormat(nf);
            Number labelNF = new Number(0, 3, 3.1415926, wcfN);
            sheet.addCell(labelNF);
         //boolean型数据
         Boolean label3 = new Boolean(0,4,true);
         sheet.addCell(label3);
         //添加DateTime对象
            DateTime labelDT = new DateTime(0, 5, new Date());
         sheet.addCell(labelDT);
       //添加带有formatting的DateFormat对象
         DateFormat df = new DateFormat("yyyy-MM-dd HH:mm:ss"); //HH是24小时制,hh是12小时制
            WritableCellFormat wcfDF = new WritableCellFormat(df);
            DateTime labelDTF = new DateTime(4, 1, new Date(), wcfDF);
            sheet.addCell(labelDTF);
            //关闭对象,释放资源
            workbook.write();
            workbook.close();
}catch(Exception e){
       e.printStackTrace();

}
public static void main(String[] args) {
try {
writeExcel();
} catch (IOException e) {
e.printStackTrace();
}
}
}

public static int createdExcel(String PATH, List list, String title, String[] rowsName, String merged) { try { File myFile = new File(PATH); if (!myFile.exists()) { myFile.createNewFile(); WritableWorkbook wbook = Workbook.createWorkbook(myFile); // 创建一个可写返回工作薄同给定文件名 WritableSheet wsheet = wbook.createSheet(title, 0); // sheet名称 // 设置字体 WritableFont wfont = new WritableFont(WritableFont.createFont("宋体"), 10, WritableFont.BOLD); WritableCellFormat wcfFC = new WritableCellFormat(wfont); wcfFC.setBorder(jxl.format.Border.ALL, jxl.format.BorderLineStyle.THIN); //单元格边缘线格式设置 wcfFC.setAlignment(jxl.format.Alignment.CENTRE); // 居中对齐 wcfFC.setVerticalAlignment(jxl.format.VerticalAlignment.CENTRE); //垂直居中 //wcfFC.setBackground(jxl.format.Colour.BLUE); // 蓝色底 // 设置行高和列宽 //wsheet.setColumnView(列数, 列宽); //wsheet.setRowView(行数, 行高); // 开始生成主体内容 for (int i = 0 ; i < rowsName.length; i++) { wsheet.addCell(new Label(i, 0, rowsName[i], wcfFC)); wsheet.setColumnView(i, 12); wfont = new WritableFont(WritableFont.createFont("宋体"), 10, WritableFont.NO_BOLD); wcfFC = new WritableCellFormat(wfont); wcfFC.setBorder(jxl.format.Border.ALL, jxl.format.BorderLineStyle.THIN); //单元格边缘线格式设置 //是数字时的格式化 // jxl.write.NumberFormat numberFormat = new jxl.write.NumberFormat(NumberFormat.CURRENCY_DOLLAR); // jxl.write.WritableCellFormat wcfFCNUMBER = new jxl.write.WritableCellFormat(wfont,numberFormat); // wcfFCNUMBER.setBorder(jxl.format.Border.ALL, jxl.format.BorderLineStyle.THIN); //单元格边缘线格式设置 // wcfFCNUMBER.setAlignment(jxl.format.Alignment.CENTRE); // 居中对齐 // wcfFCNUMBER.setVerticalAlignment(jxl.format.VerticalAlignment.CENTRE); //垂直居中 //是数字时的格式化 wcfFC.setWrap(true); //合并单元格操作 //wsheet.mergeCells(坐标列1, 坐标行1, 坐标列2, 坐标行2) for (int i = 0; i < list.size(); i++) { String[] args = (String[]) list.get(i); for (int j = 0; j < args.length; j ++) { if (args[j].length()<15 ) { wsheet.addCell(new jxl.write.Number(j, i+1, Float.parseFloat(args[j]), wcfFC)); } else { wsheet.addCell(new Label(j, i+1, args[j], wcfFC)); if (merged.indexOf("," + (i+1) + ",") >=0) { wsheet.mergeCells(0, i+1, args.length-1, i+1); wsheet.setRowView(i, 1000); //打印分页符 if (i % 20 == 0) { //wsheet.addRowPageBreak(i); // 主体内容生成结束 wbook.write(); // 写入文件 wbook.close(); return 1; } catch (Exception ex) { ex.printStackTrace(); return 0; 在jxl组建中没有提供直接的自定义16进制颜色的方法,但是可以通过他的某些方法来实现参考方法如下:package com.manager.util;import java.awt.Color;import java.io.File;import jxl.Workbook;import jxl.format.Colour;import jxl.write.Label;import jxl.write... Java创建Excel设置一列样式为文本类型动态创建Excel表格创建Excel实体类设置身份证列为文本格式Control层getExcelName类 动态创建Excel表格 创建Excel实体类 package com.homeinns.microsrvpmsadminservice.utils.excelUtils; import com.homeinns.microsrvpmscommon.utils.excelUtils.DateType; import com.homeinns.microsrv HSSFSheet sheet = wb.createSheet(); HSSFCellStyle setBorder = wb.createCellStyle();[/code] Sheet sheet = workbook.createSheet(); sheet.setColumnWidth(0, 30*256);//当前sheet页第一列宽度 sheet.setColumnWidth(1, 70*256);//第二列宽度 CellStyle style = workbook.createCellStyle(); Font font = workbook.createFont(); 本篇主要讲的是接口writableSheet,writableSheet中的方法是对工作表进行写和读方面的操作,其中包括添加单元格、设置行高、设置列宽、添加超链接、添加图片、插入一行或一列数据和删除行或列等操作。令人感到不好的消息是该接口所提供的有些方法在我使用时还是遇到了问题,同样希望小伙伴们自己测试测试。话不多说,直接上代码。 import java.io.File; import java 上次已经为大家介绍过javaExcel单元格对齐包含什么?使用边框怎么做?今天再为大家介绍一些其他的java知识,也就是javaExcel字体设置以及背景和纹理的操作,一起来看看吧。一、首先说一下javaExcel字体设置,如下:HSSFCellcell=row.createCell(1);cell.setCellValue("设置字体");HSSFCellStylestyle... java操作导出Excel(jxl导出WritableWorkbook)jxl合并单元格,单元格的设置,单元格居中、字体、大小、换行、合并行,列宽、指定特定字符串样式等 import cn.afterturn.easypoi.excel.annotation.Excel; import lombok.Getter; import lombok.Setter; import lombok.ToString; import org.hibernate.valid... 转载:https://blog.csdn.net/qq_34624315/article/details/81364330 HSSFWorkbook demoWorkBook = new HSSFWorkbook(); HSSFSheet demoSheet = demoWorkBook.createSheet("The World's 500 Enterprises"); HSSFC...