電力系統(tǒng)技術(shù)jxl導(dǎo)入簡介_第1頁
電力系統(tǒng)技術(shù)jxl導(dǎo)入簡介_第2頁
電力系統(tǒng)技術(shù)jxl導(dǎo)入簡介_第3頁
電力系統(tǒng)技術(shù)jxl導(dǎo)入簡介_第4頁
電力系統(tǒng)技術(shù)jxl導(dǎo)入簡介_第5頁
已閱讀5頁,還剩6頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)

文檔簡介

1、Jxl 簡析2010-05-17 11:23一、API 系列jxl.jar 包地址:http:/jexcelapi/真實地址:http:/jexcelaownload.htmlJxl 的API 主要有三個包,jxl,jxl.format,jxl.write如果單獨的分析 API,可能對于更明確的了解此 API 沒有太多的幫助,的層次來剝離此 API 吧還是從 Excel 文件一個 excel 文件由一個工作簿組成,一個工作簿又由 n 個工作表組成每個工作表又由多個單元格組成對應(yīng)于 Jxl 中的結(jié)構(gòu)為說明工作簿工作表單元格/讀文件(包 jxl)寫文件(包 jxl.write)WorkbookWr

2、itableWorkbookSheetWritableSheetCell/Image/Hyperlink WritableCell/WritableImage/WritableHyperlink 圖像/超鏈接單元格(此處指文本單元格,圖像及和單元格做為一個層次)分為好多種,所以在 API 的設(shè)計中將 Cell 作為一個接口而存在對應(yīng)的 jxl 中的結(jié)構(gòu)為:讀文件(包 jxl) CellCell寫文件(包 jxl.write) 說明WritableCell單元格值單元格DateCell ErrorCell LabelCell NumberCellFormualCedllDateTime時間單元格

3、形式錯誤的單元格文本單元格數(shù)字單元格公式單元格空格單元格公式單元格時間公式單元格錯誤公式單元格文本公式單元格數(shù)字公式單元格Label Number FormualBlFormualCell DateFormualCell ErrorFormualCell StringFormualCellNumberFormualCell而有的時候可能將幾個單元格作為一個整體來處理,在 API 中對應(yīng)的則是:jxl.Range雖然數(shù)據(jù)是電子表格的,但是同時其也需要一些輔助類比如文件格式設(shè)置,工作表設(shè)置與顯示效果單元格設(shè)置與顯示效果等按照其層次,則依次有以下接口或類讀文件(包 jxl)寫文件(包 jxl.wri

4、te)說明WorkbookSettings(包 jxl)設(shè)置 workbook 屬性的WorkbookSettingsbean設(shè)置具體 sheet 的屬性的 bean(比如表頭表底等)表示表頭表底類SheetSettingsSheetSettings(包 jxl)HeaderFooterHeaderFooter(包 jxl)HeaderFooter.Contents HeaderFooter.Contents(包 具體表頭表底設(shè)置jxl)表格內(nèi)容相關(guān)設(shè)置(驗證)CellFeaturesWritableCellFeautres得到性單元格相關(guān)屬CellReferenceHelperCellTyp

5、e CellViewCellFormat表格相關(guān)類型表格視圖相關(guān)設(shè)置表格顯示樣式設(shè)置邊框枚舉時間格式CellView(包 jxl) WritableCellFormat BoldStyleDateFormatDateFormats NumbreFormat NumbreFormats WritableFontWriteableFont.Fontname時間格式枚舉數(shù)據(jù)格式數(shù)字模式枚舉字體設(shè)置靜態(tài)字體類最后,關(guān)于 Jxl.format 包此包主要是一些與具體樣式有關(guān)的接口和枚舉不進行具體描述第一部分完二)應(yīng)用在進行實踐前,需要對 excel 有一個大致的了解,excel 文件由一個工作簿(Wor

6、kbook)組成,工作簿由工作表(sheet)組成,每個工作表又由很多單元格(cell)組成. 工作簿有自己的特征,同樣工作表,單元格也一樣.從大局上了解了 excel 文件,對于(一)API更好的使用 jxl 是有一定的幫助的.具體請查看在 jxl 中其大概的層次是這樣的名稱屬性Workbook WorkbookSettingsSheetCellSheetSettingsCeLlFormat CellFeatures CellView CellTypeJxl 讀 excel:得到工作簿的方法主要有四個: Java 代碼..9.getWorkbook(File fi

7、le)getWorkbook(File file,WorkSettings ws)getWorkbook(InputStream is)getWorkbook(InputStream is,WorkSettings ws)參數(shù)有兩個:10.11.第一個參數(shù)是必須的:文件或輸入流,12.13.第二個參數(shù):工作簿 ws 是作為讀出來的 excel 的一些約定,如地區(qū),編碼等.14.15.如果文件錯誤或格式錯誤,將會拋出 BiffException 或IOException.16.17.代碼段:18.19.Workbook wb=null; 20.21.try 5.wb = Wo

8、rkbook.getWorkbook(excelFile); 26.27.wb.close(); 1.catch(BiffException ex) 32.33.34./轉(zhuǎn)換錯誤35.catch(IOException ex) 9./IO 錯誤以上如果一切正常的話,將得到此 excel 文件的工作簿.接下來此文件簿得到其他的東西了.以下是得到工作表有關(guān)的方法 Java 代碼就可以通過..9.getNumberOfSheets()/工作表個數(shù)Sheet getSheet(Stringname);/得到此對稱的工作表Sheet g

9、etSheet(index);/得到此序列號的工作表Sheet getSheets();/得到工作表數(shù)組String getSheetNames();/得到工作表名稱數(shù)組10.11.示例代碼如下:12.13.Sheet sheet; 14.15.if(wb.getNumberOfSheets()0) 9.20.21.sheet = wb.getSheet(0);Java 代碼..9.以下的方法除非特別目的,否則用到的地方不多Range finaName(String name);/得到此名稱的表格區(qū)Cell findCellByName(Stri

10、ng name);/得到此名稱的 CellCell getCell(String loc)String getRangeNames();10.11.與文件是否可寫有關(guān)的12.13.14.isProected();15.得到了工作簿文件的某個工作表時16.17.對于工作表而言其主要的內(nèi)容就是單元格了18.19./根據(jù)內(nèi)容查看20.21.Cell findCell(Pattern pattern,Col,Row,lastCol, 22.lastRow,reverse)23.Cell findCell(String 24.25.Cell findCell(Stringcontent)content,

11、omt forstCol, reverse)Row,lastCol, 26.lastRow,27.LabelCell findLabelCell(String contents) 28.29./根據(jù)位置得到30.31.Cell getCell( 32.col,row)33.Cell getCell(String loc)/loc 的格式為 A3/B1/C3 其相同于34.35.getCell(CellReferenceHelper.getColumn(loc0,CellReferenceHelper.getRow(loc),所以相對而言其性能沒有 Cell getCell(快36.37./單元

12、格數(shù)組38.col,row)39.Cell getRows( 40.41.Cell getCols( 42.43./特殊單元格數(shù)組44.row)/當(dāng)前行單元格數(shù)組col)/當(dāng)前列單元格數(shù)組45./超46.表格47.Hyperlink getHyperlinks();/超 48.49./區(qū)域表格50.數(shù)組51.Range getMergedCells();/區(qū)域單元格數(shù)組 52.53./圖像表格54.55.56.getNumberOfImages()/擁有數(shù)57.Image getDrawing( 58.index)/對應(yīng)序號的59./工作表或多個表格一些自我屬性60.61.String get

13、Name()/工作表名 5.66.getRows()/行數(shù)getCols()/列數(shù)67.SheetSettings getSettings()/工作表設(shè)置 68.69.CellView getColumnView(col)/此列的表格視圖 70.71.CellView getRowView( 72.row)/此行的表格視圖73.以下是與單元格有關(guān)的一些操作:74.75.CellFeatures getCellFeatures()/主要是與表格內(nèi)容有關(guān)的一些性質(zhì)如驗證等76.77.CellFormat getCellFormat()/主要是表格外在表現(xiàn)格式有關(guān)的一些性質(zhì)78.

14、2.getColumn()/所在列g(shù)etRow()/所在行83.String getContents();/內(nèi)容 84.85.86.isHidden();/可見否87.CellType getType();/表格類型此方法來確定表格類型88.89.如果不確定表格如果轉(zhuǎn)換則可以使用以下講述如何寫 excel 文件寫文件分為兩種情況一種是新建一種則是更新新建 excel 文件新建 excel 文件很簡單:Java 代碼1.2.3./文件WritableWorkbook createWorkbook(File file) excel 文件/無形式的創(chuàng)建一個.Writ

15、ableWorkbook createWorkbook(File file Workbook in)/以 in 一樣的格式創(chuàng)建一個 excel 文件,其初始內(nèi)容與 in 文件相同(更新文件可以用到此方法)8.9. WriteableWorkbook createWorkbook(File file,WorkSetting ws)/以 ws 的設(shè)定創(chuàng)建文件10.11.WritableWorkbook createWorkbook(File file,Workbook in,WorkSetting ws)12.13./以 ws 的設(shè)定創(chuàng)建一個與in 文件相同的文件14.15./流16.17.Wri

16、tableWorkbook createWorkbook(OutputStream os) 18.19.WritableWorkbook createWorkbook(OutputStream os Workbook in) 20.21.WriteableWorkbook createWorkbook(OutputStream os,WorkSetting ws)22.23.WritableWorkbook createWorkbook(OutputStream os,Workbook in,WorkSetting ws)7.代碼示例:28.29.WritableWorkb

17、ook wrb; 30.31.WriteableWorkbook wrbin; 32.33.try 7.wrb = 38.39.wrbin 3.catch 44.45.46.Workbook.createWorkbook(file);= Workbook.createWorkbook(file,wb);(IOexception e)47./IO 錯誤1.當(dāng)創(chuàng)建好工作簿時,52.就需要新建工作表了53.WritableSheet createSheet(String name, 54.index);55.WritableSheet wr

18、s 56.= wrb.createSheet(“demo”,0);57./創(chuàng)建一個名為 demo 的工作表,其為工作簿的第一個工作表58.59.接下來60.61.62.就可以進行其他操作了63.添加文本類單元格:64.65.Label 66.label = new Label(0,0,”);67.wrb.addCell(label); 68.69./添加數(shù)據(jù)單元格70.71.Number number = new Number(0,3,1234); 72.73.wrb.addCell(number); 74.75./添加時間單元格76.77.DateTime dt = new DateTime

19、(0,4,new Date(); 78.79.Wrb.addCell(dt); 80.81./添加公式單元格82.83.Fornual formual = new Formual(0,11,”Sum(A1:A9)”); 84.85.wrb.addCell(formual); 9.添加超90.類單元格91.WirtableHyperlink wrlink =92.93.new WritableHyperlink(0,1,0,1,newURL(“94.”),”emlog”);95.wrb.addHyperlink(wrlink); 9./添加圖像100.10

20、1.WritableImage wrimage=new WritableImage(1,5,10,10,newFile(imageFilepath); 05.wrb.addImage(wrimage);/注意,API 中注明只支持 png 文件,然而我用其他格式的,通過將其后緣改為 png 也能放到 excel 文件中果然,在查看其具體源代碼時,發(fā)現(xiàn)作者只是檢測了文件的后綴名,如果不對 給出警告,并沒有從圖像文件的具體格式進行檢測106.107./當(dāng)然,表格中的數(shù)據(jù)算是表格的部分,但是同時API 也提供了大量的其他方法來豐富表格的顯示在此,大家具體在使用過程中進行運用就行108

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論