現階段JAVA操作Excel的JAR主要有apache 的POI及jxl.Jxl方便快捷,POI用于對復雜Excel的操作。
Jxl官網:http://www.andykhan.com/jexcelapi/index.html
一、Jxl的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包,此包主要是一些與具體樣式有關的接口和枚舉,不進行具體描述。
文章摘自:http://blog.csdn.net/surgent/article/details/5836580