日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術文章
文章詳情頁

Java實現導入導出Excel文件的方法(poi,jxl)

瀏覽:193日期:2022-05-26 17:59:28

目前,比較常用的實現Java導入、導出Excel的技術有兩種Jakarta POI和Java Excel直接上代碼:

一,POI

POI是apache的項目,可對微軟的Word,Excel,Ppt進行操作,包括office2003和2007,Excl2003和2007。poi現在一直有更新。所以現在主流使用POI。

xls:

pom:

<dependency><groupId>org.apache.poi</groupId><artifactId>poi-ooxml</artifactId><version>3.9</version></dependency><dependency><groupId>commons-io</groupId><artifactId>commons-io</artifactId><version>2.2</version></dependency>

導出:

public class PoiCreateExcel { public static void main(String[] args) { // 創建表頭 String[] title = {'id','name','sex'}; //創建Excel工作薄 HSSFWorkbook workbook = new HSSFWorkbook(); //創建一個工作表sheet HSSFSheet sheet = workbook.createSheet(); //創建第一行 HSSFRow row = sheet.createRow(0); HSSFCell cell = null; // 插入第一行 for (int i = 0; i < title.length; i++) { cell = row.createCell(i); cell.setCellValue(title[i]); } // 追加數據 for (int i = 1; i < 10; i++) {// 這里的int 起始是1 也就是第二行開始 HSSFRow nexTrow = sheet.createRow(i); HSSFCell cell2 = nexTrow.createCell(0); cell2.setCellValue('a'+i); cell2 = nexTrow.createCell(1); cell2.setCellValue('user'); cell2 = nexTrow.createCell(2); cell2.setCellValue('男'); } // 創建一個文件 File file = new File('d:/poi.xls'); try { file.createNewFile(); // 將內容存盤 FileOutputStream stream = FileUtils.openOutputStream(file); workbook.write(stream); stream.close(); } catch (Exception e) { e.printStackTrace(); } }}

導入:

public class PoiReadExcel { public static void main(String[] args) { // 引入需要解析的文件 File file = new File('d:/poi.xls'); try { // 創建Excel 讀取文件內容 HSSFWorkbook workbook = new HSSFWorkbook(FileUtils.openInputStream(file)); /** * 第一種方式讀取Sheet頁 */// HSSFSheet sheet = workbook.getSheet('Sheet0'); /** * 第二種方式讀取Sheet頁 */ HSSFSheet sheet = workbook.getSheetAt(0); int firstRowNum = 0;// 起始行第0行 int lasrRowNum = sheet.getLastRowNum();// 一直讀到最后一行 for (int i = 0; i < lasrRowNum; i++) { HSSFRow row = sheet.getRow(i); // 獲取當前最后單元格列號 int lastCellNum = row.getLastCellNum(); for (int j = 0; j < lastCellNum; j++) { HSSFCell cell = row.getCell(j); String value = cell.getStringCellValue();// 注意! 如果Excel 里面的值是String 那么getStringCellValue 如果是其他類型 則需要修改 System.out.print(value + ' '); } System.out.println(); } } catch (Exception e) { e.printStackTrace(); } }}

xlsx:

pom:

<!-- poi高版本額外包 --><dependency><groupId>org.apache.poi</groupId><artifactId>poi-examples</artifactId><version>3.9</version></dependency><dependency><groupId>org.apache.poi</groupId><artifactId>poi-excelant</artifactId><version>3.9</version></dependency><dependency><groupId>org.apache.poi</groupId> <artifactId>poi-ooxml</artifactId><version>3.9</version></dependency><dependency><groupId>org.apache.poi</groupId><artifactId>poi-ooxml-schemas</artifactId><version>3.9</version></dependency><dependency><groupId>org.apache.poi</groupId><artifactId>poi-scratchpad</artifactId> <version>3.9</version></dependency>

導出:

public class PoiCreateExcel { public static void main(String[] args) { // 創建表頭 String[] title = {'id','name','sex'}; //創建Excel工作薄 XSSFWorkbook workbook = new XSSFWorkbook(); //創建一個工作表shheet Sheet sheet = workbook.createSheet(); //創建第一行 Row row = sheet.createRow(0); Cell cell = null; // 插入第一行 for (int i = 0; i < title.length; i++) { cell = row.createCell(i); cell.setCellValue(title[i]); } // 追加數據 for (int i = 1; i < 10; i++) {// 這里的int 起始是1 也就是第二行開始 Row nexTrow = sheet.createRow(i); Cell cell2 = nexTrow.createCell(0); cell2.setCellValue('a'+i); cell2 = nexTrow.createCell(1); cell2.setCellValue('user'); cell2 = nexTrow.createCell(2); cell2.setCellValue('男'); } // 創建一個文件 File file = new File('d:/poi.xlsx');// 這里可以修改成高版本的 try { file.createNewFile(); // 將內容存盤 FileOutputStream stream = FileUtils.openOutputStream(file); workbook.write(stream); stream.close(); } catch (Exception e) { e.printStackTrace(); } }}

導入:

public class PoiReadExcel { public List<Double> readExcels(InputStream is)throws Exception{ List<Double> xlsxList = new ArrayList<Double>(); try { if(is ==null){ throw new IOException('文件不正確!'); } Workbook workbook = WorkbookFactory.create(is); FormulaEvaluator fe = workbook.getCreationHelper().createFormulaEvaluator(); //獲取第一張表 Sheet sheet = workbook.getSheetAt(0); if(sheet == null){ throw new IOException('傳入的excel的第一張表為空!'); } for(int rowNum = 0;rowNum <= sheet.getLastRowNum(); rowNum++){ Row row = sheet.getRow(rowNum); if(row != null){ //獲得當前行的開始列 int firstCellNum = row.getFirstCellNum(); //獲得當前行的列數 int lastCellNum = row.getPhysicalNumberOfCells(); String result = ''; //循環當前行 for(int cellNum = firstCellNum; cellNum < lastCellNum;cellNum++){ Cell cell = row.getCell(cellNum); double value = 0; String valueString = cell.getStringCellValue(); if(null!=fe.evaluate(cell)){ value = fe.evaluate(cell).getNumberValue(); } //result = result + cellNum + ':'+value + '----'; result = result + cellNum + ':'+valueString + '----'; } System.out.println(result + ' '); } } is.close(); } catch (FileNotFoundException e) { throw new Exception('文件不正確!'); } return xlsxList; } public static void main(String[] args) throws Exception { InputStream is = new FileInputStream('d:/poi.xlsx'); PoiReadExcel re = new PoiReadExcel(); re.readExcels(is); }}

二,JXL

JXL只能對Excel進行操作,屬于比較老的框架,它只支持到Excel 95-2000的版本。現在已經停止更新和維護。

pom:

<!-- jxl --><dependency><groupId>net.sourceforge.jexcelapi</groupId><artifactId>jxl</artifactId><version>2.6.10</version></dependency>

導出:

public class JxlCreateExcel { public static void main(String[] args) { // 首先設置表格第一行 表格頭名稱 也就是列名 String [] title = {'id','name','sex'}; // 創建Excel文件 存入路徑 File file = new File('d:/jxl.xls'); try { file.createNewFile(); // 創建工作薄 WritableWorkbook workbook = Workbook.createWorkbook(file); // 創建sheet WritableSheet sheet = workbook.createSheet('sheet1',0); // 添加數據 Label label = null; // 第一行設置列名 for (int i = 0; i < title.length; i++) { label = new Label(i,0,title[i]); sheet.addCell(label); } // 追加數據 從第二行開始 i從1開始 for (int i = 1; i < 9; i++) { label = new Label(0,i,'id:'+i); sheet.addCell(label); label = new Label(1,i,'user'); sheet.addCell(label); label = new Label(2,i,'男'); sheet.addCell(label); } // 寫入 并在最后關閉流 workbook.write(); workbook.close(); } catch (Exception e) { e.printStackTrace(); } }}

導入:

public class JxlReadExcel { public static void main(String[] args) { try { // 創建 Workbook Workbook workbook = Workbook.getWorkbook(new File('d:/jxl.xls')); // 獲取工作表sheet Sheet sheet = workbook.getSheet(0); // 獲取數據 for (int i = 0; i < sheet.getRows(); i++) {// 獲取行 for (int j = 0; j < sheet.getColumns(); j++) {// 獲取列 Cell cell = sheet.getCell(j,i); System.out.print(cell.getContents() + ' ');// 得到單元格的內容 } System.out.println(); } workbook.close(); } catch (Exception e) { e.printStackTrace(); } }}

到此,代碼可直接部署運行,希望可以幫助到你~

總結

到此這篇關于Java實現導入導出Excel文件的方法(poi,jxl)的文章就介紹到這了,更多相關java實現導入導出excel文件內容請搜索好吧啦網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持好吧啦網!

標簽: excel
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
青青草国产精品亚洲专区无| 久久不见久久见中文字幕免费| 久久精品一区二区三区中文字幕| 麻豆久久久久久| 精品国产网站| 99视频精品视频高清免费| 在线综合视频| 日韩高清在线不卡| 另类欧美日韩国产在线| 国产精品视频首页| 麻豆精品蜜桃| 国产精品日韩| 国产精品啊啊啊| 精品成人免费一区二区在线播放| 老鸭窝毛片一区二区三区| 91免费精品国偷自产在线在线| 精品99在线| 黄色av日韩| 国产精品3区| 久久精品国产大片免费观看| 99pao成人国产永久免费视频| 午夜视频一区二区在线观看| 精品免费av| 免费日韩一区二区| 国产欧美视频在线| 久久久久蜜桃| 7777精品| 亚洲国产专区| 国产伦理久久久久久妇女| 一本大道色婷婷在线| 亚洲精品九九| 久久精品卡一| 国产精品香蕉| 中文欧美日韩| 欧美韩日一区| 日韩福利视频导航| 欧洲一级精品| 国产亚洲精品美女久久| 国产一区二区中文| 亚洲精品在线a| 日韩一区二区三区免费播放| 欧美日韩网址| 久久福利毛片| www.com.cn成人| 欧美午夜三级| 欧美日韩国产一区二区三区不卡| 久久99精品久久久久久园产越南| 黄色在线一区| 日韩av在线中文字幕| 日本综合视频| 亚洲一区欧美激情| 色爱综合av| 精品一区av| 日本免费在线视频不卡一不卡二| 亚洲伦乱视频| 久久精品国产99国产| 日韩精品一区二区三区中文在线| 亚洲va在线| 久久久久伊人| 国产日韩欧美一区在线| 中文无码日韩欧| 91久久久久| 日本欧美不卡| 热三久草你在线| 麻豆成人91精品二区三区| 色8久久久久| 伊人影院久久| 亚州av乱码久久精品蜜桃| 97精品国产福利一区二区三区| 日韩国产高清在线| 蜜桃视频一区二区三区| 好吊视频一区二区三区四区| 久久精品观看| 日本久久成人网| 免费在线小视频| 久久久一本精品| 日韩欧美网址| 日韩精品1区| 麻豆视频在线观看免费网站黄| 麻豆传媒一区二区三区| 国产精品网站在线看| 国产美女撒尿一区二区| 欧美亚洲免费| 国产毛片精品| 日韩精品第一| 91久久精品无嫩草影院| 日韩精品国产欧美| 日本午夜精品视频在线观看| 欧美综合社区国产| 国产精品毛片在线| 影音先锋久久精品| 日韩精品三级| 日本不卡一区二区三区| 日韩超碰人人爽人人做人人添| 亚洲天堂av资源在线观看| 免费欧美在线视频| 日韩欧美精品一区二区综合视频| 日韩一区二区三免费高清在线观看 | 综合欧美亚洲| 亚洲久久视频| 日韩中文字幕| 国产乱人伦精品一区| 久久精品国产网站| 日韩久久一区二区三区| 国产99久久| 一本色道精品久久一区二区三区| 日韩午夜免费| 自拍自偷一区二区三区| 亚洲精品美女91| 欧美日韩a区| 国产不卡av一区二区| 久久久一本精品| 美女少妇全过程你懂的久久| 日韩午夜在线| 欧美日韩一区二区三区不卡视频| 国产精品99久久免费| 91一区二区三区四区| 欧美69视频| 中文不卡在线| 老鸭窝一区二区久久精品| 999国产精品永久免费视频app| 亚洲免费在线| 欧美黑人巨大videos精品| 精品久久久久中文字幕小说| 久久精选视频| 日本不卡一二三区黄网| 日韩成人免费| 性色av一区二区怡红| 国产精品成人一区二区网站软件| 国产高清不卡| 蜜臀av一区二区在线免费观看| 久久99精品久久久野外观看| 国产字幕视频一区二区| 日韩不卡在线观看日韩不卡视频| 视频在线不卡免费观看| 噜噜噜躁狠狠躁狠狠精品视频| 国产精品永久| 欧美粗暴jizz性欧美20| 日韩欧美中文字幕一区二区三区| 成人在线视频中文字幕| 免费视频一区二区| 欧美成人a交片免费看| 日韩中文字幕| 亚洲福利专区| 国产高清日韩| 亚洲在线网站| 精品日产乱码久久久久久仙踪林| 不卡av一区二区| 美女视频黄免费的久久| 久热精品在线| 亚洲日本网址| 国产日产一区| 99成人在线| 久久免费精品| 男人操女人的视频在线观看欧美| 麻豆国产欧美日韩综合精品二区| 亚洲精品一二三区区别| 麻豆精品在线| 一区二区亚洲视频| 日韩欧美字幕| 欧美成人精品一级| 视频一区在线播放| 日韩免费福利视频| 国产精品入口久久| 免费在线观看一区二区三区| 亚洲不卡av不卡一区二区| 国产伦精品一区二区三区视频| 中文久久精品| 福利视频一区| 欧美日韩18| 亚洲另类av| 伊人精品在线| 久久婷婷一区| 国产一区二区视频在线看| 日韩欧美三区| 久久先锋影音| 不卡av一区二区| 日韩三区免费| a国产在线视频| 美女视频免费精品| 青草国产精品| 亚洲性视频在线| 国产免费成人| 久久国产亚洲精品| 成人精品动漫一区二区三区| 日韩精品一级| 亚洲网址在线观看| 少妇精品导航| 日产精品一区二区| 精品视频91| 九九99久久精品在免费线bt| 国产精品对白久久久久粗| 日本午夜精品视频在线观看| 亚洲欧洲av| 亚洲精品伊人| 日韩中文av| 欧美有码在线| 欧美日韩99| 热久久久久久| 97精品国产99久久久久久免费|