<摘自>飞:jxl简析:http://www.emlog.net/fei

最近,完成了一个网上报表系统,刚巧用到了一个 JAVA 操作 excel 表格的 API .闲来无事,就将其大概的总结了一下.现阶段 JAVA 操作 Excel 的 JAR 主要有 apache 的 POI 及 jxl. 因为现在的 eclipse 操作 excel 用的插件为 jxl ,所以在项目中就使用了 jxl .想想两者都差不了太多.此简单系列为两个部分,一是 API 系列,另一部分则是应用系列.

一、 API 系列

Jxl 的 API 主要有三个包, jxl,jxl.format,jxl.write .如果单独的分析 API ,可能对于更明确的了解此 API 没有太多的帮助,我们还是从 Excel 文件的层次来剥离此 API 吧.

一个 excel 文件由一个工作簿组成,一个工作簿又由 n 个工作表组成.每个工作表又由多个单元格组成.对应于 Jxl 中的结构为

读文件(包 jxl )

写文件 ( 包 jxl.write)

说明

Workbook  

WritableWorkbook

工作簿

Sheet

WritableSheet

工作表

Cell/Image/Hyperlink

WritableCell/WritableImage//WritableHyperlink

单元格 / 图像 / 超链接

单元格(此处指文本单元格,图像及链接和单元格做为一个层次)分为好多种,所以在 API 的设计中将 Cell 作为一个接口而存在.

对应的 jxl 中的结构为:

读文件(包 jxl )

写文件 ( 包 jxl.write)

说明

Cell

WritableCell

单元格

BooleanCell

Boolean

布尔值单元格

DateCell

DateTime

时间单元格

ErrorCell

形式错误的单元格

LabelCell

Label

文本单元格

NumberCell

Number

数字单元格

FormualCedll

Formual

公式单元格

Blank

空格单元格

BooleanFormualCell

布尔公式单元格

DateFormualCell

时间公式单元格

ErrorFormualCell

错误公式单元格

StringFormualCell

文本公式单元格

NumberFormualCell

数字公式单元格

而有的时候,我们可能将几个单元格作为一个整体来处理,在 API 中对应的则是:

jxl.Range

虽然数据是电子表格的核心,但是同时其也需要一些辅助类 比如文件格式设置,工作表设置与显示效果.单元格设置与显示效果等.按照其层次,则依次有以下接口或类.

读文件(包 jxl )

写文件 ( 包 jxl.write)

说明

WorkbookSettings

WorkbookSettings (包 jxl )

设置 workbook 属性的 bean

SheetSettings

SheetSettings (包 jxl )

设置具体 sheet 的属性的 bean (比如表头表底等)

HeaderFooter

HeaderFooter (包 jxl )

表示表头表底类

HeaderFooter.Contents

HeaderFooter.Contents (包 jxl )

具体表头表底设置

CellFeatures

WritableCellFeautres

表格内容相关设置(验证)

CellReferenceHelper

得到引用单元格相关属性

CellType

表格相关类型

CellView

CellView (包 jxl )

表格视图相关设置

CellFormat

WritableCellFormat

表格显示样式设置

BoldStyle

边框枚举

DateFormat

时间格式

DateFormats

时间格式枚举

NumbreFormat

数据格式

NumbreFormats

数字模式枚举

WritableFont

字体设置

WriteableFont.Fontname

静态字体内部类

最后,关于 Jxl.format 包.此包主要是一些与具体样式有关的接口和枚举.不进行具体描述.第一部分完.

<摘自>飞:jxl简析[ http://www.emlog.net/fei ]的更多相关文章

  1. <摘自>飞:jxl简析2 [ http://www.emlog.net/fei ]

    [<摘自>飞:jxl简析:http://www.emlog.net/fei] (二)应用 在进行实践前 , 我们需要对 excel 有一个大致的了解 ,excel 文件由一个工作簿 (Wo ...

  2. SpringMVC学习(一)——概念、流程图、源码简析

    学习资料:开涛的<跟我学SpringMVC.pdf> 众所周知,springMVC是比较常用的web框架,通常整合spring使用.这里抛开spring,单纯的对springMVC做一下总 ...

  3. 简析.NET Core 以及与 .NET Framework的关系

    简析.NET Core 以及与 .NET Framework的关系 一 .NET 的 Framework 们 二 .NET Core的到来 1. Runtime 2. Unified BCL 3. W ...

  4. 简析 .NET Core 构成体系

    简析 .NET Core 构成体系 Roslyn 编译器 RyuJIT 编译器 CoreCLR & CoreRT CoreFX(.NET Core Libraries) .NET Core 代 ...

  5. RecycleView + CardView 控件简析

    今天使用了V7包加入的RecycleView 和 CardView,写篇简析. 先上效果图: 原理图: 这是RecycleView的工作原理: 1.LayoutManager用来处理RecycleVi ...

  6. Java Android 注解(Annotation) 及几个常用开源项目注解原理简析

    不少开源库(ButterKnife.Retrofit.ActiveAndroid等等)都用到了注解的方式来简化代码提高开发效率. 本文简单介绍下 Annotation 示例.概念及作用.分类.自定义. ...

  7. PHP的错误报错级别设置原理简析

    原理简析 摘录php.ini文件的默认配置(php5.4): ; Common Values: ; E_ALL (Show all errors, warnings and notices inclu ...

  8. Android 启动过程简析

    首先我们先来看android构架图: android系统是构建在linux系统上面的. 所以android设备启动经历3个过程. Boot Loader,Linux Kernel & Andr ...

  9. Android RecycleView + CardView 控件简析

    今天使用了V7包加入的RecycleView 和 CardView,写篇简析. 先上效果图: 原理图: 这是RecycleView的工作原理: 1.LayoutManager用来处理RecycleVi ...

随机推荐

  1. 十一长假我肝了这本超硬核PDF,现决定开源!!

    写在前面 在 [冰河技术] 微信公众号中的[互联网工程]专题,更新了不少文章,有些读者反馈说,在公众号中刷 历史文章不太方便,有时会忘记自己看到哪一篇了,当打开一篇文章时,似乎之前已经看过了,但就是不 ...

  2. 自动创建新序列号的Cookies脚本

    已知一个网站在被访问的时候会读取电脑上存储的cookies 如果已经有cookie变量存在 则在存在的变量后按顺序增加新的序列 如电脑上有vst1变量的cookie了 那么新用户则自动创建为 vst2 ...

  3. BigInteger和BigDecimal

    BigInteger BigInteger的作用是对整数做计算,一般的使用String类型初始化BigInteger,它除了封装了基本的加减乘除运算外还提供了signum(),abs()等函数,使用方 ...

  4. Android开发Settings源码分析之主界面加载(二)

    现在都说互联网寒冬,其实只要自身技术能力够强,咱们就不怕!我这边专门针对Android开发工程师整理了一套[Android进阶学习视频].[全套Android面试秘籍].[Android知识点PDF] ...

  5. IDEA项目路径初探

    IDEA项目路径 普通Java项目 普通Java项目,标准目录结构src下的路径就是classpath类路径,每次编译都会将src目录下新增的类和资源文件打包进类路径. 如下图,类文件和配置文件都会被 ...

  6. sync.WaitGroup的使用以及坑

    all goroutines are asleep - deadlock 简单使用: package main import ( "sync" ) type httpPkg str ...

  7. 运行bee run之后出现的错误以及解决方法Failed to build the application:

      运行bee run之后出现的错误以及解决方法 创建一个beego项目 bee new myapp 在该项目执行下面的代码 bee run 出现的问题 2020/04/22 21:12:07 INF ...

  8. shell脚本在后台运行以及日志重定向输出

    后台运行命令 在命令行后加上 &,表示进程到后台中执行,如:cmd & 日志输出重定向 如:cmd > out.log & Linux默认定义两个变量:1和2: 1 表示 ...

  9. eclipse快捷键(Mac版)整理

    eclipse快捷键(Mac版)整理 前言: 最近在学习JDBC,老师用的是eclipse,对于习惯了IDEA的我来说,没有了快捷键,效率明显下降. 我认为,开发工具的熟练使用,也是程序员必备的一项技 ...

  10. Redis学习笔记(六)——数据结构之Set

    一.介绍 Redis的Set是string类型的无序集合.集合成员是唯一的,这就意味着集合中不能出现重复的数据. Redis中集合是通过哈希表实现的,所以添加.删除.查找的复杂度都是O(1). 集合中 ...