Apache POI
写excel
public static void write() throws IOException {//再内存中创建了一个Excel文件XSSFWorkbook excel = new XSSFWorkbook();//创建一个sheet页XSSFSheet sheet = excel.createSheet("info");//这里创建行对象,这里的rownum 是从0开始的,类似于数组XSSFRow row = sheet.createRow(1);//创建单元格 这里的index也是从0开始的row.createCell(1).setCellValue("姓名"); //创建单元格,并且设置单元格内容row.createCell(3).setCellValue("城市");//新起一行row = sheet.createRow(2);row.createCell(1).setCellValue("jjking");row.createCell(3).setCellValue("广州");FileOutputStream fos = new FileOutputStream(new File("info.xlsx"));excel.write(fos);//关闭资源fos.close();excel.close();}
这个也不用过多的介绍,我们只要照着写就ok了,没什么难的
这样子,过后写好的excel,是这样的
读excel
public static void read() throws IOException, InvalidFormatException {XSSFWorkbook excel = new XSSFWorkbook(new File("info.xlsx"));//读取sheet页XSSFSheet sheet = excel.getSheetAt(0);//读取最后一个有文字的行号int lastRowNum = sheet.getLastRowNum();//从第2行开始读for(int i = 1; i <= lastRowNum; i++) {//获取行XSSFRow row = sheet.getRow(i);//获取单元格的对象String cellValue1 = row.getCell(1).getStringCellValue();String cellValue2 = row.getCell(3).getStringCellValue();System.out.println(cellValue1 + " " + cellValue2);}excel.close();
}