1. 12 Java之Excel文件读写

1. 12 Java之Excel文件读写_第1张图片

    1. 12 Java之Excel文件读写_第2张图片

1. 12 Java之Excel文件读写_第3张图片

1. 12 Java之Excel文件读写_第4张图片

package com.lujier.readExcel;

import  java.util.List;
import java.io.FileInputStream;
import org.apache.poi.ss.usermodel.Cell;
import org.apache.poi.ss.usermodel.CellType;
import org.apache.poi.ss.usermodel.Name;
import org.apache.poi.ss.usermodel.Row;
import org.apache.poi.ss.usermodel.Row.MissingCellPolicy;
import org.apache.poi.ss.usermodel.Sheet;
import org.apache.poi.ss.usermodel.Workbook;
import org.apache.poi.ss.usermodel.WorkbookFactory;

public class ReadExcelPOI {
	public static void main(String[] args) {

		 String file_path = "src/test/resources/students1.xlsx";
		 try {
			 // 1. 打开文件(流读取excel文件)
			 FileInputStream inputs = new FileInputStream(file_path);
		     // 2.创建excel对象workbook(工作薄)
			 //   多态Workbook(Excel对象),即可接收2003版本,也可2007版本
			 Workbook wb = WorkbookFactory.create(inputs);
			 // 3. 获取sheet(表单)
		     //	 Sheet sh = wb.getSheetAt(0); // 通过索引获取表单
//			 Sheet sh = wb.getSheet("sheet1");
			 Sheet sh = wb.getSheetAt(0);


			 // 4.获取row(行)
//			 sh.getRow(0);
			 // 4.1 获取最大行号: 索引(0开始)
			 int lastRowNum = sh.getLastRowNum();
			 System.out.printf("lastRowNum=%d",lastRowNum);
		     // 4.2 循环所有的行
			 for(int i=0;i<=lastRowNum;i++) {
				 // 4.3  获取当前行
				 Row row = sh.getRow(i);
				 // 4.4  获取最大列号: 长度
				 int lastCellNum = row.getLastCellNum();
				 System.out.printf("lastCellNum=%d\n",lastCellNum);
				 // 4.5 遍历每行所有的单元格
				 for(int j=0;j

1. 12 Java之Excel文件读写_第5张图片

package com.lujier.readExcel;

import java.io.FileInputStream;
import java.io.FileOutputStream;

import org.apache.poi.ss.usermodel.Cell;
import org.apache.poi.ss.usermodel.CellType;
import org.apache.poi.ss.usermodel.Row;
import org.apache.poi.ss.usermodel.Sheet;
import org.apache.poi.ss.usermodel.Workbook;
import org.apache.poi.ss.usermodel.WorkbookFactory;
import org.apache.poi.ss.usermodel.Row.MissingCellPolicy;

/**
* TODO
*   @File:  WriteExcelPOI.java
 *  @Author: Lujier          @SINCE: 2020年8月12日 下午9:59:07
 *  @Phone: 15934815829      @Email: [email protected]
 * */
public class WriteExcelPOI {
	public static void main(String[] args) {
		 String file_path = "src/test/resources/students1.xlsx";
		 try {
			 // 1. 打开文件(流读取excel文件)
			 FileInputStream inputs = new FileInputStream(file_path);
		     // 2.创建excel对象workbook(工作薄)
			 //   多态Workbook(Excel对象),即可接收2003版本,也可2007版本
			 Workbook wb = WorkbookFactory.create(inputs);
			 // 3. 获取sheet(表单)
		     //	 Sheet sh = wb.getSheetAt(0); // 通过索引获取表单
//			 Sheet sh = wb.getSheet("sheet1");
			 Sheet sh = wb.getSheetAt(0);
			 // 4. 获取指定行:第2行
			 int row_num = 2;
			 Row row =  sh.getRow(row_num);
			 // 5. 获取指定列,获得cell对象
			 int column_num = 2;
			 Cell cell = row.getCell(column_num, MissingCellPolicy.CREATE_NULL_AS_BLANK);
			 // 5.1 设置单元格值类型
			 cell.setCellType(CellType.STRING); 
			 // 5.2 获取单元格的内容
//			 String cellValue = cell.getStringCellValue();
//			 System.out.printf("(%d,%d)=%s:",row_num,column_num,cellValue);	 
             // 5.3 单元格值设置: 修改
			 cell.setCellValue("女女");
			 // 6. 回写Excel(单元格内容修改也就是工作薄内容改变,所以工作薄对输出流文件写操作)
			 
			 FileOutputStream out = new FileOutputStream(file_path);
			 wb.write(out);
			// 7. 关闭文件流		
			inputs.close();
			out.close();
		 
		 } catch(Exception e) {
			 e.printStackTrace();	 
		 } 
		 	 
 }


}

1. 12 Java之Excel文件读写_第6张图片

你可能感兴趣的:(JAVA自动化测试)