使用JXL.jar实现JAVA对EXCEL的读写操作
簡(jiǎn)介:
jxl.jar是通過(guò)java操作excel表格的工具類(lèi)庫(kù)
jxl操作excel包括對(duì)象Workbook(工作簿),Sheet(工作表) ,Cell(單元格)。
一個(gè)excel就對(duì)應(yīng)一個(gè)Workbook對(duì)象。
一個(gè)Workbook可以有多個(gè)Sheet對(duì)象。
一個(gè)Sheet對(duì)象可以有多個(gè)Cell對(duì)象。
讀取Excel操作
通過(guò)Workbook,Sheet ,Cell這三個(gè)對(duì)象我們就可以實(shí)現(xiàn)Excel文件的讀取工作。
讀取步驟:?
1、 選取Excel文件得到工作薄
Workbook workbook = Workbook.getWorkbook(new File("myfile.xls"));2、 選擇工作表,通過(guò)Workbook的getSheet方法選擇第一個(gè)工作表(從0開(kāi)始)
Sheet sheet = workbook.getSheet(0);3、 選擇Cell
讀取單元格
通過(guò)Sheet的getCell方法選擇位置為C2的單元格(兩個(gè)參數(shù)都從0開(kāi)始)
Cell c2 = sheet.getCell(2,1);4、 讀取信息?
通過(guò)Cell的getContents方法讀取單元格的值
把單元格中的信息以字符的形式讀取出來(lái)String stringc2 = c2.getContents();Cell提供了一個(gè)getType方法
能夠返回單元格的類(lèi)型信息,同時(shí)JXL提供了一個(gè)CellType類(lèi)用來(lái)預(yù)設(shè)Excel中的類(lèi)型信息,而且JXL提供了一些Cell類(lèi)的子類(lèi)用來(lái)分別用來(lái)表示各種類(lèi)型的單元格,如LabelCell,NumberCell,DateCell分別表示字符、數(shù)值、日期類(lèi)型的單元格
5、釋放資源:
workbook.close() import java.io.File; import java.io.IOException;import jxl.Sheet; import jxl.Workbook; import jxl.read.biff.BiffException;/*** jxl讀excel* * @author jianggujin* */ public class JxlReadDemo {public static void main(String[] args) throws BiffException, IOException{File xlsFile = new File("jxl.xls");// 獲得工作簿對(duì)象Workbook workbook = Workbook.getWorkbook(xlsFile);// 獲得所有工作表Sheet[] sheets = workbook.getSheets();// 遍歷工作表if (sheets != null){for (Sheet sheet : sheets){// 獲得行數(shù)int rows = sheet.getRows();// 獲得列數(shù)int cols = sheet.getColumns();// 讀取數(shù)據(jù)for (int row = 0; row < rows; row++){for (int col = 0; col < cols; col++){System.out.printf("%10s", sheet.getCell(col, row).getContents());}System.out.println();}}}workbook.close();} }寫(xiě)入excel操作
通過(guò)WritableWorkbook,WritableSheet,Label這三個(gè)對(duì)象我們就可以實(shí)現(xiàn)Excel文件的插入工作。
1、 創(chuàng)建可寫(xiě)入的Excel工作薄
WritableWorkbook wwb = Workbook.createWorkbook(new File(“myfile.xls”));
2、創(chuàng)建工作表
WritableSheet ws = wwb.createSheet(“通訊錄”, 0);
3、創(chuàng)建單元格
添加文本類(lèi)單元格
Label labelC = new Label(0, 0, “This is a Label cell”);
ws.addCell(labelC);
4、寫(xiě)入到文件
wwb.write();// 寫(xiě)入數(shù)據(jù)
5、釋放資源:
wwb.close();// 關(guān)閉文件
import java.io.File; import java.io.IOException;import jxl.Workbook; import jxl.write.Label; import jxl.write.WritableSheet; import jxl.write.WritableWorkbook; import jxl.write.WriteException;/*** jxl寫(xiě)Excel* * @author jianggujin* */ public class JxlWriteDemo {public static void main(String[] args) throws IOException, WriteException{File xlsFile = new File("jxl.xls");// 創(chuàng)建一個(gè)工作簿WritableWorkbook workbook = Workbook.createWorkbook(xlsFile);// 創(chuàng)建一個(gè)工作表WritableSheet sheet = workbook.createSheet("sheet1", 0);for (int row = 0; row < 10; row++){for (int col = 0; col < 10; col++){// 向工作表中添加數(shù)據(jù)sheet.addCell(new Label(col, row, "data" + row + col));}}workbook.write();workbook.close();} }更新excel操作
1、創(chuàng)建只讀的Excel表副本
Workbook workbook = Workbook.getWorkbook(file);
2、創(chuàng)建可寫(xiě)入的Excel工作薄
WritableWorkbook writableWorkbook = Workbook.createWorkbook(file, workbook);
3、其他操作與寫(xiě)入excel操作類(lèi)似
寫(xiě)在最后:
我叫風(fēng)骨散人,名字的意思是我多想可以不低頭的自由生活,可現(xiàn)實(shí)卻不是這樣。家境貧寒,總得向這個(gè)世界低頭,所以我一直在奮斗,想改變我的命運(yùn)給親人好的生活,希望同樣被生活綁架的你可以通過(guò)自己的努力改變現(xiàn)狀,深知成年人的世界里沒(méi)有容易二字。目前是一名在校大學(xué)生,預(yù)計(jì)考研,熱愛(ài)編程,熱愛(ài)技術(shù),喜歡分享,知識(shí)無(wú)界,希望我的分享可以幫到你!
如果有什么想看的,可以私信我,如果在能力范圍內(nèi),我會(huì)發(fā)布相應(yīng)的博文!
感謝大家的閱讀!😘你的點(diǎn)贊、收藏、關(guān)注是對(duì)我最大的鼓勵(lì)!
總結(jié)
以上是生活随笔為你收集整理的使用JXL.jar实现JAVA对EXCEL的读写操作的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 今年的流行语有哪些 网络流行语2020口
- 下一篇: 算法竞赛进阶指南--快速幂,求a^b m