jxl 能够操作的 excel 样式:

1. Workbook的格式设置(代表一个excel文件)

2. Sheet的格式设置(代表一个表格)

3. Cell的格式设置(代表一个单元格)

PS:此jxl API是基于jxl 2.6而来的

   官方API:http://jexcelapi.sourceforge.net/resources/javadocs/current/docs/

具体内容:

1. Workbook的格式,Workbook的格式由WorkbookSettings来设置,比较需要注意的是jxl的格式设置统一使用了有get/set方法的bean来操作,这样做的好处是不仅查看API设置格式变成方便,而且把Workbook的格式分离出来有得于扩展.WorkbookSettings的API我试过几个,在word 2010下没有一个起作用,也不知道为什么.不过jxl有一套默认的WorkbookSettings设置,一般情况下使用默认的就可以了,有什么特殊需要可以看API,不过API并不是特别详细.使用方式:

    1 WorkbookSettings bookSettings = new WorkbookSettings();
     bookSettings.setEncoding("UTF-8");
     WritableWorkbook book = Workbook.createWorkbook(new File("E:/testwrite.xls"), bookSettings);

2.Sheet的格式由SheetSettings来设置,使用方式:

    WritableWorkbook book = Workbook.createWorkbook(new File("E:/testwrite.xls"), bookSettings);
    WritableSheet sheet = book.createSheet("sheet1", 0);
    SheetSettings settings = sheet.getSettings(); // sheet格式
    settings.setDefaultColumnWidth(6);// 默认字体是10,所以刚好适应6个字符
    settings.setDefaultRowHeight(400);// 显示是10像素

  几个用有的API:

  

a)         setDefaultColumnWidth/setDefaultRowHeight设置单元格默认的宽度与高度,宽度的大小是根据当前的默认字体的大小来设置的,而高度则是适应的,除非    你设置了高度,高度的单位是设置值1/20像素.

PS:所有的格式都是在book.write()才写进excel文件的.因此可以对参数在write之前进行修改.

b)         setHorizontalFreeze/setVerticalFreeze设置列,行的固定,这个是从1开始算起的.

c)         setHeader/setFooter设置打印时的页头与页尾的输出内容,在SheetSettings里的很多设置都和打印的格式有关.

  3. Cell的格式设置由WritableCellFormat去设定,Cell有三种类型的格式:文本格式,数字格式和日期格式,与它们相关的格式都在jxl.write.*中可以找到.

  几个有用API:

  

a)         文本处理,使用WritableFont类来设置格式,能够设置文本的字体,大小(像素),是否加粗,是否斜体,是否有下划线,颜色,上下标的格式:

            // 文字处理
WritableFont font = new WritableFont(WritableFont.ARIAL);
// 设置字体有arial,Times New Roman,Courier New,Tahoma
font.setBoldStyle(WritableFont.BOLD); // 加粗
font.setItalic(true); // 斜体
font.setUnderlineStyle(UnderlineStyle.DOUBLE); // 下划线
font.setColour(Colour.BLUE_GREY); // 字体颜色
font.setPointSize(20); // 字体大小
font.setScriptStyle(ScriptStyle.SUBSCRIPT); // 是否上下标
WritableCellFormat format = new WritableCellFormat(font);
Label label = new Label(0, 0, "abcdef", format);
sheet.addCell(label);

b)         超文本处理,使用WritableHyperlink设置格式,能够设置一定单元格内点击打开网页或者本地文件.

            // 超文本处理
WritableHyperlink link = new WritableHyperlink(0,4,0,5, new URL("http://www.baidu.com"),"百度");
sheet.addHyperlink(link);// 打开网页 WritableHyperlink link1 = new WritableHyperlink(0, 6, new File("E:/test.xls"));
sheet.addHyperlink(link1); // 打开本地excel

c)         数字处理,使用NumberFormat设置数字格式,可以使用自定义的格式,通过使用#号来决定保留的数位,不足#号的长度的不会用0补充,还可以用0符号,这个会进行补充0.

            // 四舍五入,数字处理
NumberFormat numberFormat = new NumberFormat("0000000.0000");
WritableCellFormat format1 = new WritableCellFormat(numberFormat);
Number number = new Number(0, 1, 3234.62, format1);
sheet.addCell(number);

d)         日期处理,jxl有自带的格式,不过格式自己也会用啦

            // 日期格式处理
Date time = Calendar.getInstance().getTime();
DateFormat dateFormat = new DateFormat("yyyy-MM-dd HH:mm:ss");
WritableCellFormat format2 = new WritableCellFormat(dateFormat);
DateTime timeCell = new DateTime(0, 2, time, format2);
sheet.addCell(timeCell);

e)         图片处理:

            // 图片处理
WritableImage writableImage = new WritableImage(10,10,50,50, new File("E:/blue.png"));
sheet.addImage(writableImage);

PS:记得close book流,清理内存.

            book.write();
book.close();

  

jxl 处理 Excel 样式的更多相关文章

  1. JXL解析Excel表格内容到数据库

    java中常用的解析Excel表格的工具一种是POI一种是JXL,POI功能强大,相比JXL稍嫌复杂,对表格样式的处理非常好:而JXL解析简单方便,对中文支持比较好. 工作中解析Excel内容上传到数 ...

  2. jxl导出Excel中需要跳过的的坑

    正如上篇文章(JXL封装不能使用static关键字问题)所说,在jxl导出Excel时候如果频繁使用到WritableCellFormat去设置单元格的样式,这个时候经常会出现两种情况: 1.报警告: ...

  3. java利用jxl操作Excel

    /** * 把从数据库查询到的数据,写入电子表格 * * @throws Exception */ public void createXls() throws Exception { Dao dao ...

  4. Java:JXL解析Excel文件

    项目中,有需求要使用JXL解析Excel文件. 解析Excel文件 我们先要将文件转化为数据流inputStream. 当inputStream很大的时候 会造成Java虚拟器内存不够 抛出内存溢出 ...

  5. jxl读写excel的方法

    jxl 只有excel基本的操作,代码操作比较方便,一般使用jxl就够了,对图片支持较好 poi功能比jxl强大但是比较吃内存,支持计算公式 具体参考链接    http://www.cnblogs. ...

  6. 利用jxl读取excel合并的单元格的一个小样例

    工作中我们可能要把Excel文件的记录保存到数据库, 今天我用jxl读取Excel文件时遇到了合并格的问题,记录例如以下: 如Excel文件例如以下: watermark/2/text/aHR0cDo ...

  7. jxl读写excel, poi读写excel,word, 读取Excel数据到MySQL

    这篇blog是介绍: 1. java中的poi技术读取Excel数据,然后保存到MySQL数据中. 2. jxl读写excel 你也可以在 : java的poi技术读取和导入Excel了解到写入Exc ...

  8. Jxl创建Excel文件和解析Excel文件

    import java.io.File; import jxl.Workbook; import jxl.write.Label; import jxl.write.WritableSheet; im ...

  9. java中使用jxl读取excel中的数据

    package bboss; import java.io.File; import java.io.FileInputStream; import java.io.IOException; impo ...

随机推荐

  1. VUE 入门基础(3)

    三,模板语法 Vue将模板编译成虚拟DOM渲染函数,结合响应系统,在应用状态改变时,vue能够智能地计算出重新渲染组件的最小代价并DOM操作上. 插值,文本 数据绑定常见的形式就是使用"Mu ...

  2. 虚幻引擎4笔记20160821 - 使用GPU粒子做雪花旋转镜头雪花忽有忽无的问题

    在使用GPU进行雪花制作的时候,雪花总是在镜头旋转的时候,一会有,一会无的情况,后来下载别人的例子才知道,原来要给粒子加上边界,具体解决方法如下图

  3. windows server 无人值守安装

    使用 answer file:AutoUnattend.xml 来无人值守安装,到了选系统这步 还是要手动选择一个系统,这是为什么?怎么设置可以默认进入GUI的系统进行安装啊?

  4. C#检测键盘输入

    void Update(){     if (Input.GetKey(KeyCode.W))     {          go stread;     }     if (Input.GetKey ...

  5. 使用小米天气API获取天气信息

    1. URL部分 以下url中"%s"代表的是城市Id,比如北京的cityId=101010100: //获取未来五天预报信息,红色部分信息不需要 WEATHER_DATA_URL ...

  6. nullcon HackIM 2016 -- Crypto Question 2

    Some one was here, some one had breached the security and had infiltrated here. All the evidences ar ...

  7. bootstrap datetimerange

    天用的了bootstrap日期插件感觉搜索的资料不是很多在此写下一些使用的心得: 插件开源地址:daterangepicker日期控件, 插件使用只要按照开源中的文档信息来就好先包括以下引用: < ...

  8. 抽象和封装_JAVA_OOP

    很久没做笔记了,没有以前的刚开始学习软件时候的热情了.包括几年前U盘损坏,数据丢失,通过数据恢复,也只是找回一些零星的碎片. 现在就抽时间把以前的技术笔记找回来,这十条记录在电脑上显示的最后修改日期为 ...

  9. WizNote for linux installation

    源一:没有用处 官网链接http://www.wiznote.com/download-wiznote-for-Linux. 源二:提供了源及安装方法 Fedora 中文社区软件源,具体位置在这里. ...

  10. CentOS下的Memcache安装步骤(Linux+Nginx+PHP+Memcached)

    一.源码包准备 服务器端主要是安装memcache服务器端下载:http://memcached.googlecode.com/files/memcached-1.4.4.tar.gz另外,Memca ...