Java如何导入导出Excel文件

  介绍

小编给大家分享一下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文件