<摘自>飞:jxl简析[ http://www.emlog.net/fei ]
<摘自>飞: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 ]的更多相关文章
- <摘自>飞:jxl简析2 [ http://www.emlog.net/fei ]
[<摘自>飞:jxl简析:http://www.emlog.net/fei] (二)应用 在进行实践前 , 我们需要对 excel 有一个大致的了解 ,excel 文件由一个工作簿 (Wo ...
- SpringMVC学习(一)——概念、流程图、源码简析
学习资料:开涛的<跟我学SpringMVC.pdf> 众所周知,springMVC是比较常用的web框架,通常整合spring使用.这里抛开spring,单纯的对springMVC做一下总 ...
- 简析.NET Core 以及与 .NET Framework的关系
简析.NET Core 以及与 .NET Framework的关系 一 .NET 的 Framework 们 二 .NET Core的到来 1. Runtime 2. Unified BCL 3. W ...
- 简析 .NET Core 构成体系
简析 .NET Core 构成体系 Roslyn 编译器 RyuJIT 编译器 CoreCLR & CoreRT CoreFX(.NET Core Libraries) .NET Core 代 ...
- RecycleView + CardView 控件简析
今天使用了V7包加入的RecycleView 和 CardView,写篇简析. 先上效果图: 原理图: 这是RecycleView的工作原理: 1.LayoutManager用来处理RecycleVi ...
- Java Android 注解(Annotation) 及几个常用开源项目注解原理简析
不少开源库(ButterKnife.Retrofit.ActiveAndroid等等)都用到了注解的方式来简化代码提高开发效率. 本文简单介绍下 Annotation 示例.概念及作用.分类.自定义. ...
- PHP的错误报错级别设置原理简析
原理简析 摘录php.ini文件的默认配置(php5.4): ; Common Values: ; E_ALL (Show all errors, warnings and notices inclu ...
- Android 启动过程简析
首先我们先来看android构架图: android系统是构建在linux系统上面的. 所以android设备启动经历3个过程. Boot Loader,Linux Kernel & Andr ...
- Android RecycleView + CardView 控件简析
今天使用了V7包加入的RecycleView 和 CardView,写篇简析. 先上效果图: 原理图: 这是RecycleView的工作原理: 1.LayoutManager用来处理RecycleVi ...
随机推荐
- shell-的特殊变量-难点理论
一:shell的特殊变量-难点理论 1. $*和$@的区别例子 $* 将所有的命令行所有参数视为单个字符串,等同于"$1$2$3" $@ 将命令行每个参数视为单独 ...
- arcgis-java-100.8.0.jar下载
链接: https://pan.baidu.com/s/1HoW2IhPvHRw9LBZphxC5Rw 提取码: pexn
- golang不想http自动处理重定向的解决方案
目录 前言 解决方案 结论 前言 有时候发送http请求不想让库自动帮忙处理重定向,库里面默认的是会把所有重定向都完成一遍,结果就是最后一个没有重定向的请求的结果.因此需要一种方案直接获取首次 ...
- centos 7.0 更改启动环境/启动进入图形界面/命令行模式
当前我桌面模式 systemctl set-default multi-user.target ln -sf /lib/systemd/system/multi-user.target /etc/sy ...
- SpringBoot+Activiti+bpmn.js+Vue.js+Elementui(OA系统审批流)
引言:OA系统用到请假.加班.调休.离职,需要使用工作流进行流程审批 一:activiti流程设计器的选择(通过学习activiti工作流过程中,发现一款好的流程设计器将会更好的方便的设计好流程(主要 ...
- 用Pycharm创建指定的Django版本
最近在学习胡阳老师(the5fire)的<Django企业级开发实战>,想要使用pycharm创建django项目时,在使用virtualenv创建虚拟环境后,在pycharm内,无论如何 ...
- kali linux 换国内源
输入命令 vim /etc/apt/sources.list 添加国内源 #中科大deb http://mirrors.ustc.edu.cn/kali kali-rolling main non-f ...
- Elasticsearch索引的操作,利用kibana 创建/删除一个es的索引及mapping映射
索引的创建及删除 1. 通过索引一篇文档创建了一个新的索引 .这个索引采用的是默认的配置,新的字段通过动态映射的方式被添加到类型映射. 利用Kibana提供的DevTools来执行命令,要创建一个索引 ...
- C语言/C++编译环境的设置!有的人还没开始就卡住了!
本地环境设置 如果您想要设置 C++ 语言环境,您需要确保电脑上有以下两款可用的软件,文本编辑器和 C++ 编译器. 文本编辑器 这将用于输入您的程序.文本编辑器包括 Windows Notepad. ...
- mysql8在生产环境中的配置
一,配置文件的位置 [root@yjweb ~]# ll /etc/my.cnf -rw-r--r-- 1 root root 935 Mar 11 16:52 /etc/my.cnf 说明:通常我们 ...