現(xiàn)階段JAVA操作Excel的JAR主要有apache 的POI及jxl.Jxl方便快捷,POI用于對(duì)復(fù)雜Excel的操作。
Jxl官網(wǎng):http://www.andykhan.com/jexcelapi/index.html
一、Jxl的API
Jxl的API主要有三個(gè)包,jxl,jxl.format,jxl.write。如果單獨(dú)的分析API,可能對(duì)于更明確的了解此API沒有太多的幫助,我們還是從Excel文件的層次來剝離此API吧。
一個(gè)excel文件由一個(gè)工作簿組成,一個(gè)工作簿又由n個(gè)工作表組成,每個(gè)工作表又由多個(gè)單元格組成。對(duì)應(yīng)于Jxl中的結(jié)構(gòu)為
讀文件(包jxl) | 寫文件(包jxl.write) | 說明 |
Workbook | WritableWorkbook | 工作簿 |
Sheet | WritableSheet | 工作表 |
Cell/Image/Hyperlink | WritableCell/WritableImage//WritableHyperlink | 單元格/圖像/超鏈接 |
單元格(此處指文本單元格,圖像及鏈接和單元格做為一個(gè)層次)分為好多種,所以在API的設(shè)計(jì)中將Cell作為一個(gè)接口而存在。 對(duì)應(yīng)的jxl中的結(jié)構(gòu)為:
讀文件(包jxl) | 寫文件(包jxl.write) | 說明 |
Cell | WritableCell | 單元格 |
BooleanCell | Boolean | 布爾值單元格 |
DateCell | DateTime | 時(shí)間單元格 |
ErrorCell | | 形式錯(cuò)誤的單元格 |
LabelCell | Label | 文本單元格 |
NumberCell | Number | 數(shù)字單元格 |
FormualCedll | Formual | 公式單元格 |
| Blank | 空格單元格 |
BooleanFormualCell | | 布爾公式單元格 |
DateFormualCell | | 時(shí)間公式單元格 |
ErrorFormualCell | | 錯(cuò)誤公式單元格 |
StringFormualCell | | 文本公式單元格 |
NumberFormualCell | | 數(shù)字公式單元格 |
而有的時(shí)候,我們可能將幾個(gè)單元格作為一個(gè)整體來處理,在API中對(duì)應(yīng)的則是:
jxl.Range
雖然數(shù)據(jù)是電子表格的核心,但是同時(shí)其也需要一些輔助類,比如文件格式設(shè)置,工作表設(shè)置與顯示效果,單元格設(shè)置與顯示效果等。按照其層次,則依次有以下接口或類。
讀文件(包jxl) | 寫文件(包jxl.write) | 說明 |
WorkbookSettings | WorkbookSettings(包jxl) | 設(shè)置workbook屬性的bean |
SheetSettings | SheetSettings(包jxl) | 設(shè)置具體sheet的屬性的bean(比如表頭表底等) |
HeaderFooter | HeaderFooter(包jxl) | 表示表頭表底類 |
HeaderFooter.Contents | HeaderFooter.Contents(包jxl) | 具體表頭表底設(shè)置 |
CellFeatures | WritableCellFeautres | 表格內(nèi)容相關(guān)設(shè)置(驗(yàn)證) |
CellReferenceHelper | | 得到引用單元格相關(guān)屬性 |
CellType | | 表格相關(guān)類型 |
CellView | CellView(包jxl) | 表格視圖相關(guān)設(shè)置 |
CellFormat | WritableCellFormat | 表格顯示樣式設(shè)置 |
| BoldStyle | 邊框枚舉 |
| DateFormat | 時(shí)間格式 |
| DateFormats | 時(shí)間格式枚舉 |
| NumbreFormat | 數(shù)據(jù)格式 |
| NumbreFormats | 數(shù)字模式枚舉 |
| WritableFont | 字體設(shè)置 |
| WriteableFont.Fontname | 靜態(tài)字體內(nèi)部類 |
最后,關(guān)于Jxl.format包,此包主要是一些與具體樣式有關(guān)的接口和枚舉,不進(jìn)行具體描述。
文章摘自:http://blog.csdn.net/surgent/article/details/5836580