介绍
小编给大家分享一下Java如何导入导出Excel文件,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获、下面让我们一起去了解一下吧!
目前,比较常用的实现Java导入,导出Excel的技术有两种Jakarta POI和Java Excel直接上代码:
POI是apache的项目,可对微软的词,Excel, Ppt进行操作,包括office2003和2007年Excl2003和2007. POI现在一直有更新。所以现在主流使用POI。
xls:
pom:
& lt; dependency> & lt; groupId> org.apache.poi & lt; artifactId> poi-ooxml & lt; version> 3.9 & lt;/version> & lt;/dependency> & lt; dependency> & lt; groupId> commons-io & lt; artifactId> commons-io & lt; version> 2.2 & lt;/version> & lt;/dependency>
导出:
公共类PoiCreateExcel { 公共静态void main (String [] args) {//创建表头 String [] title={“id",“name",“sex"};//创建Excel工作薄 HSSFWorkbook工作簿=new HSSFWorkbook ();//创建一个工作表板 HSSFSheet表=workbook.createSheet ();//创建第一行 HSSFRow行=sheet.createRow (0); HSSFCell细胞=零;//插入第一行 for (int i=0;我& lt;title.length;我+ +){ 细胞=row.createCell(我); cell.setCellValue(标题[我]); }//追加数据 for (int i=1;我& lt;10;我+ +){//这里的int起始是1也就是第二行开始 HSSFRow nexTrow=sheet.createRow(我); HSSFCell cell2=nexTrow.createCell (0); cell2.setCellValue (“a" + i); cell2=nexTrow.createCell (1); cell2.setCellValue (“user"); cell2=nexTrow.createCell (2); cell2.setCellValue(“男“); }//创建一个文件 文件文件=新文件(“d:/poi.xls"); 尝试{ file.createNewFile ();//将内容存盘 FileOutputStream流=FileUtils.openOutputStream(文件); workbook.write(流); stream.close (); }捕捉(异常e) { e.printStackTrace (); } } }
导入:
公共类PoiReadExcel { 公共静态void main (String [] args) {//引入需要解析的文件 文件文件=新文件(“d:/poi.xls"); 尝试{//创建Excel读取文件内容 HSSFWorkbook工作簿=new HSSFWorkbook (FileUtils.openInputStream(文件);/* * *第一种方式读取表页 *///HSSFSheet表=workbook.getSheet (“Sheet0");/* * *第二种方式读取表页 */HSSFSheet表=workbook.getSheetAt (0); int firstRowNum=0;//起始行第0行 int lasrRowNum=sheet.getLastRowNum();//一直读到最后一行 for (int i=0;我& lt;lasrRowNum;我+ +){ HSSFRow行=sheet.getRow(我);//获取当前最后单元格列号 int lastCellNum=row.getLastCellNum (); for (int j=0;j & lt;lastCellNum;j + +) { HSSFCell细胞=row.getCell (j); 字符串值=https://www.yisu.com/zixun/cell.getStringCellValue();//注意!如果Excel里面的值是字符串那么getStringCellValue如果是其他类型则需要修改 system . out。打印(价值+ " "); } System.out.println (); } }捕捉(异常e) { e.printStackTrace (); } } }
xlsx:
pom:
& lt; !——poi高版本额外包——比; & lt; dependency> & lt; groupId> org.apache.poi & lt; artifactId> poi-examples & lt; version> 3.9 & lt;/version> & lt;/dependency> & lt; dependency> & lt; groupId> org.apache.poi & lt; artifactId> poi-excelant & lt; version> 3.9 & lt;/version> & lt;/dependency> & lt; dependency> & lt; groupId> org.apache.poi & lt; artifactId> poi-ooxml & lt; version> 3.9 & lt;/version> & lt;/dependency> & lt; dependency> & lt; groupId> org.apache.poi & lt; artifactId> poi-ooxml-schemas & lt; version> 3.9 & lt;/version> & lt;/dependency> & lt; dependency> & lt; groupId> org.apache.poi & lt; artifactId> poi-scratchpad & lt; version> 3.9 & lt;/version> & lt;/dependency>
导出:
公共类PoiCreateExcel { 公共静态void main (String [] args) {//创建表头 String [] title={“id",“name",“sex"};//创建Excel工作薄 XSSFWorkbook工作簿=new XSSFWorkbook ();//创建一个工作表shheet 单表=workbook.createSheet ();//创建第一行 行一行=sheet.createRow (0); 细胞细胞=零;//插入第一行 for (int i=0;我& lt;title.length;我+ +){ 细胞=row.createCell(我); cell.setCellValue(标题[我]); }//追加数据 for (int i=1;我& lt;10;我+ +){//这里的int起始是1也就是第二行开始 行nexTrow=sheet.createRow(我); 细胞cell2=nexTrow.createCell (0); cell2.setCellValue (“a" + i); cell2=nexTrow.createCell (1); cell2.setCellValue (“user"); cell2=nexTrow.createCell (2); cell2.setCellValue(“男“); }//创建一个文件 文件文件=新文件(“d:/poi.xlsx");//这里可以修改成高版本的 尝试{ file.createNewFile ();//将内容存盘 FileOutputStream流=FileUtils.openOutputStream(文件); workbook.write(流); stream.close (); }捕捉(异常e) { e.printStackTrace (); } } }Java如何导入导出Excel文件